c语言判断成绩等级循环结构
发布网友
发布时间:2022-04-22 10:07
我来回答
共1个回答
热心网友
时间:2023-06-30 10:06
第一种在scanf后面应该加一个getchar
你为什么在第二个后面知道加第一个后面不知道加...
因为你在做scanf输入时实际上输入的是 88(成绩) 回车 来结束输入的
这个时候你把88赋值给了a但是 回车还在缓冲区里 如果你不用getchar来吸收回车那么
你第二次scanf时 由于缓冲区里面还有一个回车 所以不等你输入他就将回车赋值给了c
因此无法进行后续循环 你输入的Y/N反而是被getchar读取了
第二种问题和上面类似 在每一个scanf后面加一个getchar来吸收回车
或者使用fflush(stdin); rewind(stdin);来刷新缓冲区
然后你最后判断处出错了
if(b=='Y')
if(b=='N')break;
这里满足break的条件是先让b=Y 如果 b = Y判断成功 在判断b=N 当b=Y满足进一步要满足b=N这怎么可能能够break...
应该if(b=='Y') continue;
else if(b=='N')break;
另外我觉得这个判断有点繁琐了 你只需要判断一种就行了
只保留if(b=='N')break;就行了 当输入N时结束 其他任意输入继续 就够了
C语言switch语句怎么用?
C语言用switch语句进行成绩等级判断可以采用以下的代码:main(){int i,a;scanf("%d",&a);i=a/10;switch a {case '10':case '9': printf("A"); break;case '8': printf("B"); break;case '7': printf("C"); break;case '6': printf("D");else printf("E");} } ...
怎么样用“C语言”判断输入的学生成绩的等级?
分数n \x0d\x0aswitch(n/10)\x0d\x0a{\x0d\x0acase 9:printf("A(最好)\n");break;\x0d\x0acase 8:printf("B(优秀)\n");break;\x0d\x0acase 7:printf("C(良好)\n");break;\x0d\x0acase 6:printf("D(及格)\n");break;\x0d\x0a default:printf("不及...
编写C语言程序 用switch结构或if语句 输入成绩 输出等级
include \x0d\x0aint main() {\x0d\x0a int s, d;\x0d\x0a printf("输入成绩(百分制): ");\x0d\x0a scanf("%d", &s);\x0d\x0a d = s / 10;\x0d\x0a switch (d) {\x0d\x0a case 10:\x0d\x0a printf("满分。\n");\x0d\x...
C语言 ——如何判断输入的是数值以外的其它数
:printf("您的成绩等级是—S—继续保持~!");break;case 9 :printf("您的成绩等级是—A—继续加油~!");break;case 8 :printf("您的成绩等级是—B—继续努力~!");break;case 7 :printf("您的成绩等级是—C—赶快拼搏~!");break;case 6 :printf("您的成绩等级是—D—别放弃咯~!")...
C语言 成绩等级问题 如何能输入5个值并对应5个输出呢?大神求教
include<stdio.h>int main(void){ float x=0.0; while( scanf("%f",&x)==1 ){ //加上循环,当输入字符或按ctrl+z结束 if(x<0||x>100) printf("Error"); else{ if(90<=x&&x<=100) printf("A"); else if(80<=x&&x<90) printf("B"); ...
c语言题目:给出一百分制成绩,要求输出成绩等级‘A'、’B‘、'C...
printf("Grade is E!\n"); break;case 4: printf("Grade is E!\n"); break;case 5: printf("Grade is E!\n"); break;case 6: printf("Grade is D!\n"); break;case 7: printf("Grade is C!\n"); break;case 8: printf("Grade is B!\n"); break;} return 0;} ...
在c语言中怎么将分数等级,最后屏幕显示出分数等级?
1.最简单的就是if-else scanf一个成绩,if(>=80)printf("A ")else if(... )2.如果区分度不大可以用switch switch(score/10)//取得十位数 {case0:...break;} 3.如果想来存成绩可以用数组保存结果然后一次性输出(如果学生有编号,用编号来当数组下标)a[num ]=’A’这样 ...
C语言中输入等级得出成绩分数的程序,用if和else语句
h> int main(){ char c;scanf("%c",&c);if(c=='A')printf("%c:100~85\n",c);else if(c=='B')printf("%c:84~70\n",c);else if(c=='C')printf("%c:69~60\n",c);else if(c=='D')printf("%c:59~0\n",c);else printf("Input error!\n");return 0;} ...
请问下面这个实例用C语言程序怎样编程
printf("成绩等级为:%c\n", grade);return 0;} 在程序中,先定义了一个整型变量 score 和一个字符型变量 grade,用来分别存储输入的成绩和计算出的等级。然后,使用 scanf 函数从键盘上读入成绩,使用除法运算将成绩转化为 1~10 的整数,并将其作为 switch 语句的选择器。根据成绩范围,使用不同...
c语言学生成绩的等级
{ int s=0;printf("请输入学生的成绩:");scanf("%d",&s);if (s < 0 || s>100){ printf("error\n");} else if (s<60){ printf("fail\n");} else if (s < 70){ printf("pass\n");} else if (s < 80){ printf("medium\n");} else if (s < 90){ printf("...