{ "question_id": 3368121, "question_title": "计算一下函数的值", "question_content": "
计算s=1+(1+2)+(1+2+3)+……+(1+2+3+……+n)的值
\n\n当某一项的值超过50时,结束循环,并将当时的s的值进行输出,将当时刚好超过50的那一项的值和项数一并输出;
\n\n如果最终项的值没有超过50,则按循环计划计算完所有的累加和,也将最终项的值和项数一并输出。
", "difficulty": "简单", "answer_id": 22392963, "answer_content": "#include<stdio.h>
\n#include<math.h>
\n#include<string.h>
\n#include<stdlib.h>
\nint main(int argc,char * argv[])
\n{
\n int summer,summer2,num;//声明和与项数变量
\n summer=0,summer2=0;//初始化和变量
\n num=atoi(argv[1]);//将命令行第二个参数转化为整数项数
\n for(int i=1;i<=num;i++)//进行循环求和
\n {
\n summer+=i;
\n summer2+=summer;
\n if(summer>50)//当某一项的值大于50时
\n {
\n printf("计算总和是%d\\n超过50的项是第%d项\\n",summer2,i);
\n printf("该项的值是%d\\n",summer);
\n return 0;
\n }
}
\n printf("计算总和是%d\\n,最后一项是%d\\n没有任何一项的值超过50\\n",summer2,num);//当任一一项的值均不大于50时
\n return 0;
\n
}
\n\n
\n代码编译运行正确无误,使用格式为:×××.exe number。***.exe指本地编译成的程序,number是要循环计算的项数。二者之间有一个空格。如果我对题目的理解有误,请私信我或者评论处给我留言。