没有if,问题中还有不能用条件选择(?:),这是为什么啊?

c++编程 求1+2+3+。。。+n的和 要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件

慕盖茨4494581
浏览 154回答 4
4回答

缥缈止盈

#include<stdio.h>int sum;int stopper = 100;void yessum(int i);void nosum(int i);typedef void(*fnPtr)(int);fnPtr dispatch[] = { yessum, nosum };void yessum(int i){sum += i;dispatch[i / stopper](i + 1);}void nosum(int i){/* do nothing. */}int main(){yessum(1);printf("%d",sum);return 0;}改好了

杨魅力

#include<stdio.h>#include<iostream>using namespace std;int main(){int n,sum=0;cin>>n;cout<<(n*(n+1)>>1)<<endl;return 0;}不能用乘法啊,我得好好想想

ibeautiful

#include <stdio.h>int Factorial(int n){int num = 0;(n > 0) && (num = n + Factorial(n - 1));return num;}int main(){printf("%d\n",Factorial(100));}

慕妹3242003

int sum = 0;int add_fun(int n){n && add_fun(n-1); //用n是否为0替代判断return (sum += n); //注意这里}
打开App,查看更多内容
随时随地看视频慕课网APP