白糖894 2022-01-16 20:07 采纳率: 76.9%
浏览 17
已结题

为什么我得到的结果是30 50?

偶数之和
输入n,求[1,n]范围内的所有偶数之和。
输入格式:

测试数据有多组。每组测试数据输入一个整数n(0<n<1000)。若n=0,则输入结束。

输出格式:

对于每组测试,求[1,n]中的偶数之和。

输入样例:

10
9
0
输出样例:

30
20
main(){
int n,i,sum;
sum=0;
while(scanf("%d",&n)!=-1){
if(n==0)
break;
else{
for(i=1;i<=n;i++){
if(i%2==0)
sum=sum+i;
}
printf("%d\n",sum);
}
}
}

  • 写回答

2条回答 默认 最新

  • LYSnowy 2022-01-16 20:17
    关注

    计算完一组值之后sum要清零,否则会累加,你的50就是30+20

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月24日
  • 已采纳回答 1月16日
  • 创建了问题 1月16日

悬赏问题

  • ¥15 如何用python的GephiStreamer连接到gephi中
  • ¥15 ansys机翼建模肋参数
  • ¥15 Sumo软件无法运行
  • ¥15 如何在vscode里搭建stata的编辑环境?
  • ¥15 dify知识库创建问题
  • ¥15 如何用C#的chart画1000万个点不卡顿
  • ¥15 爬虫技术找到网上看过房源客户的电话
  • ¥20 代码:Python随机森林反演生物量数据处理问题
  • ¥15 Linux系统的命令行窗口回车变成了换行,无法执行命令了
  • ¥15 vb6.0调用ImageMagick进行图片转换问题