要求如下
本想着按照7-24参考别人的方法,利用 while(1)里写scanf的方式完成,代码如下:
#include
int main(){
int sum,n,o;
sum = 0;
while(1){
scanf("%d",&n);
if(n<=0){
return 0;//改为break则正确
}else if(n % 2 == 1){
sum += n;
}
}//whlie
printf(" %d",sum);
}
j结果最后不会输出sum,将return 0换为 break,结果正确。思考return 0是return给谁?while(1)利用的是scanf每次输入默认返回输入值个数,本意是用return 0 代替scanf的返回值,结果好像直接return 0 了main函数,因为跨考基础不是很扎实,过后再仔细查询一下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)