m0_73515021 2022-10-09 05:27 采纳率: 85.7%
浏览 33
已结题

c语言中用循环如何解决计算奇数偶数个数的问题

c语言中我用do while循环计算奇偶数分别是多少个,输入负一代表结束,但是为什么我最后的编译运行结果会导致奇数偏多一个?

img

img

  • 写回答

2条回答 默认 最新

  • 叶落花枯 2022-10-09 05:34
    关注

    你把-1也计算进去了。
    scanf之后判断一下a的值,如果是-1就退出 break

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    m0_73515021 2022-10-09 06:31

    可是我设置循环的条件就是a不等于-1啊为什么还会参与计算勒?(就是如果我输入几个数字之后最后输入负一,为什么还是会导致奇数个数增加?))

    回复
    叶落花枯 回复 m0_73515021 2022-10-09 06:39

    你输入-1之后还没执行到while这一行判断,scanf之后还执行了 9到12行,a%2!=0成立了,number++就多了一个

    回复
    叶落花枯 回复 m0_73515021 2022-10-09 06:41

    在scanf后面加上一个判断 if(a==-1) break; 跳出循环

    回复
    展开全部5条评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 10月16日
  • 已采纳回答 10月9日
  • 创建了问题 10月9日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部