做PTA中M2021秋C、Java入门练习7-25关于while(1)里写scanf 怎么用return0 替换scanf返回值的思考。

做PTA中M2021秋C、Java入门练习7-25关于while(1)里写scanf 怎么用return0 替换scanf返回值的思考。,第1张

做PTA中M2021秋C、Java入门练习7-25关于while(1)里写scanf 怎么用return0 替换scanf返回值的思考

要求如下

本想着按照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函数,因为跨考基础不是很扎实,过后再仔细查询一下。

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4688127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-07
下一篇 2022-11-07

发表评论

登录后才能评论

评论列表(0条)

保存