标题:初学萌新向各位大佬请教一个问题
只看楼主
湖の妖精
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2019-6-30
 问题点数:0 回复次数:4 
初学萌新向各位大佬请教一个问题
为什么当我输入字母时程序会一直不停地显示不及格?
搜索更多相关主题的帖子: 输入 字母 显示 及格 
2019-06-30 11:36
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
https://zh.
2019-06-30 15:02
雪影辰风
Rank: 6Rank: 6
来 自:衡阳市
等 级:贵宾
威 望:22
帖 子:177
专家分:387
注 册:2019-6-17
得分:0 
字母是字符变量,输入时应该会出问题;
如果有这么多分支的话,推荐使用switch语句
switch(变量名)
{
    case 一个确切值:......[break;(break语句,如果你做完这个标签的语句,不想执行后面的标签,就可以打break结束整个switch]
    //举个例子,如果这个确切值为'a',系统会拿括号内变量与case标签的值挨个对比,如果相等,就会执行标签后的语句,如果确切值为单个字符,记得打单引号,标签可以有多个
    default:......//如果你并不知道确切值,但是你想做别的操作,就可以加这句,性质同上,唯一的是不能有多个,可以不用加break,作用大约等于if分支中的else语句
}
2019-07-08 19:12
雪影辰风
Rank: 6Rank: 6
来 自:衡阳市
等 级:贵宾
威 望:22
帖 子:177
专家分:387
注 册:2019-6-17
得分:0 
回复 楼主 湖の妖精
哦,对了;
我想提个建议:
你可以设定一个定值,假设输入的字符为那个定值,就结束程序;并且在较为大型的程序一般不用goto语句,你可以用while语句框住整段,括号内打true
2019-07-08 19:15
frafish
Rank: 1
等 级:新手上路
威 望:1
帖 子:4
专家分:0
注 册:2019-7-19
得分:0 
仅供参考:
我觉得应该是因为你令int a ,
理论上型态正确会回传1然后继续执行,
但是输入时如过输入的型态不正确的话,
他就会回传0然后存到a里面,
所以a =0然后你下面的条件又写
else if(a>=0&&a<60){cout << "不及格" << endl;},
所以它就只会输出不及格阿

[此贴子已经被作者于2019-7-19 22:18编辑过]

2019-07-19 22:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-495610-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.168786 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved