求1+2+…+n
题目:求1+2+…+n,
要求不能使用乘除法、for、while、if、else、switch、case等关键字
以及条件判断语句(A?B:C)。
#include<iostream>
using namespace std;
int mySum(int n)
{
int temp=0;
(!!n) && (temp=mySum(n-1));//n=0时,第一个条件为false,(temp=mySum(n-1))不会执行,因此不会再递归调用函数,递归结束。
return temp+n;
}
int main()
{
int sum=mySum(100);
cout<<sum<<endl;
return 0;
}
运行结果
//5050
//Press any key to continue

浙公网安备 33010602011771号