高分C语言问题

来源:百度知道 编辑:UC知道 时间:2024/09/22 07:06:22
程序填空,不要改变与输入输出有关的语句。
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
输入一个正整数m(0<=m<=100),计算表达式m+(m+1)+(m+2)+......+100的值。
输入输出示例:括号内为说明
3 (repeat=3)
0 (计算0+1+2+...+100)
10 (计算10+11+12+...+100)
50 (计算50+51+52+...+100)
sum=5050
sum=5005
sum=3825

#include <stdio.h>
int main(void)
{
int m, i, sum;
int ri, repeat;
scanf("%d",&repeat);
for(ri=1;ri<=repeat;ri++){
scanf("%d",&m);
/*---------*/
printf("sum=%d\n", sum);
}
}

/*---------*/
换成:

sum=0;
for(int i=m;i<=100;i++)
sum+=i;

(m+100)*(100-m+1)/2

不太明白你的意图,REPEAT=3就是
0
10
50
那REPEAT=4呢?下次从哪开始

虽然用了for循环,但是每次输入的m值,完全没被使用。sum和m的关系没有表示。for(sum=0;m<100;m++){sum=m+sum;}

#include <stdio.h>
int main(void)
{
int m, i, sum;
int ri, repeat;
scanf("%d",&repeat);
for(ri=1;ri<=repeat;ri++){
scanf("%d",&m);
sum=0;
for(i=m;i<=100;i++)sum+=i ;
printf("sum=%d\n", sum);
}
}

for(sum=0;m<=100;sum=m+sum,m++);