杭电ACM1092题目 Problem Description Your task is to Calculate th

杭电ACM1092题目 Problem Description Your task is to Calculate the sum of some integers.Input Input
#include"stdio.h"
int main()
{
int a,b,n;
a=0;
while(scanf("%d",&n)!=EOF){
while(n--){
scanf("%d",&b);
a=a+b;
}
printf("%dn",a);
}
return 0;
}
错在哪里啊啊,说的基础点的额
多少爱可以重做 1年前 已收到1个回答 举报

lijuan524 幼苗

共回答了20个问题采纳率:95% 举报

1、你的a=0放的地方不对,你这样的话只有第一次的结果是对的.应该把它放到循环里面
2、题目要求的是N为0时结束,你的代码在N为0时还做了一次输出
3、虽然题目没说整数的范围,但是可能会因为int类型不够,加法会产生溢出

1年前 追问

7

多少爱可以重做 举报

#include"stdio.h" int main() { int n,b=0,c; scanf("%d",&n)!=EOF; while((n--)!=0){ scanf("%d",&c); b+=c; } printf("%d",b); return 0; } 这个是不是之前的错误一样。。。可是造你说的改了不行么,,,可不可以帮我把这第二个改下正确,,,谢谢

举报 lijuan524

你这个代码主要是一个错误: 题目说了会有多组测试(N会有多个),你的代码只输入了一次N就结束了 在你的代码基础上的话可以这样改吧 #include"stdio.h" int main() { int n,a,c; while(scanf("%d",&n),n) { a = 0; while((n--)!=0) { scanf("%d",&c); a += c; } printf("%dn",a); } return 0; } 测试过,Accepted
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.020 s. - webmaster@yulucn.com