C语言switch语句实例问题

输入一个考试结果,90分以上输出A,80以上输出B,以此类推.60以下输出E.为什么我编好的程序输出结果都是E.请高手帮忙,程序如下
#include<stdio.h>
int main()
{
int n,x;
printf("What's the result?\n");
scanf("%f",&n);
x=n/10;
switch(x)
{
case 10:
case 9:
printf("A\n");
break;
case 8:
printf("B\n");
break;
case 7:
printf("C\n");
break;
case 6:
printf("D\n");
break;
default:
printf("E\n");
break;
}

}

第1个回答  推荐于2017-09-19
#include<stdio.h>
int main()
{
int n,x;
printf("What's the result?\n");/*这里的格式是%d 不是%f*/
scanf("%d",&n);
x=n/10;
switch(x)
{
case 10:
case 9:
printf("A\n");
break;
case 8:
printf("B\n");
break;
case 7:
printf("C\n");
break;
case 6:
printf("D\n");
break;
default:
printf("E\n");
break;
}

}本回答被提问者采纳

c语言中switch用法的问题
在C语言中,switch语句用于执行基于特定条件的选择操作。在您的示例中,程序试图根据变量a的值执行不同的操作。然而,您的代码存在一些错误。首先,您在输入整数后忘记使用`getchar()`或`fflush(stdin)`来清除输入缓冲区。这样做可以避免意外地读取额外的输入,导致程序在运行时发生错误或行为异常。其次,...

c语言swich语句例子
c语言switch case语句例子如下:include <stdio.h>int main(){int a;printf("Input integer number:");scanf("%d",&a);if(a==1){printf("Monday\\n")。}else if(a==2){printf("Tuesday\\n");}else if(a==3){printf("Wednesday\\n");}else if(a==4){printf("Thursday\\n");}else...

C语言switch的一条题目
4.当j=3时,a = a+2+3+5---》36

C语言这道关于swtich语句的题目,求解
由于b<0为假值为0,但switch(b<0)中没有case 0:,所以直接跳过switch(b<0;又由于switch(a>0)的case 1:后没有break;,所以就要直接向下执行case 0:后的语句;case 0:后嵌套了switch(c==5),

c语言有关swich的题。
switch (b%3) { default:m++; case 0: m++; break; } } printf("%d",m); return 0;} a%4表示取余数,a=7也就是说a%4=3,所以不再case选项中,switch直接结束了,所以没有执行m++操作,m=1

c语言switch用法举例内容是什么?
switch语句非常有用,但在使用时必须谨慎。所写的任何switch语句都必须遵循以下规则:只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。switch()的参数类型不能为实型 。case标签必须是常量表达式(constantExpression),如42或者'4'。case标签必须是唯一...

一道C语言题。用switch语句
void main(){ int a=0,n;printf("输入成绩:\\n");scanf("%d",&a);if(a<0 || a>100)n=0;else if(a>=85)n=1;else if(a>=60)n=2;else n=3;switch(n){ case 0:printf("输入错误\\n");break;case 1:printf("very good\\n");break;case 2:printf("pass\\n");break;case ...

c语言switch语句 谢谢·!~!~
}C语言 switch语句问题 c语言中好像是不行的,因为c语言中switch只接受整形,也就是整数或者char,在最新版的java和c#中好像是支援使用字串的 C语言switch语句变成 #include <stdio.h> int main() { int x;\/*分数*\/ scanf("%d",&x); switch(x\/10) { case 9:printf("优秀\\n...

C语言关于switch语句的一道题目
然后跳出swithc(y);继续执行case2:a++;b++;break;执行后a=2;b=1;跳出switch(1);所以最后a=2; b=1;至于怎么计算出0和0的就不清楚了,你算出a=1;b=0可能就是没有弄清楚,switch的case语句,在没有遇到break或者continue的时候会一直执行下去,一直遇到defualt或者break;为止,因此在switch(x...

关于C语言switch语句的一道题!
case 1: switch(z){case 1: printf("$");case 2: printf("*");default: printf("#"); } } 第一个switch(x)->case0 case0:switch(y=2)注意括号中得到的是bool值,即0或1,这里是1,所以printf(“*”)由于case0没有break;顺序执行下面case1:switch(z),z=3,所以选择...

相似回答