给出一百分制成绩,要求输出成绩等级‘A' 'B' 'C' 'D' 'E'。90分以上为'A',

#include <stdio.h>
void main()
{
float score;
scanf("%f",&score);

switch(grade)
{
case'A':printf("90~100\n");break;
case'B':printf("80~89\n");break;
case'C':printf("70~79\n");break;
case'D':printf("60~69\n");break;
case'E':printf("<60\n");break;
default:printf("error\n");

}
printf("%c\n",grade);
}
错在哪里了?????

#include 

main()

{

int iNum;

sacnf("%d", &iNum);

switch (iNum / 10)

{

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;

}

}

if语句:

#include 

#include 

int main(int aragc, char *argv[])

{

int score;

int ret;

printf("please input score:\n");

while(1){

ret = scanf("%d", &score);

if (ret){

if (score >= 90){

printf("A\n");

}

else if (score >= 80)

printf("B\n");

else if (score >= 70)

printf("C\n");

else if (score >= 60)

printf("D\n");

else 

printf("E\n");

}

else

break;

}

return 0;

}

主要特点如下:

(1)简洁的语言

C语言包含的各种控制语句仅有9种,关键字也只有32个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故c语言拥有非常简洁的编译系统。

(2)具有结构化的控制语句

C语言是一种结构化的语言,提供的控制语句具有结构化特征,如for语句、if...else语句和switch语句等。可以用于实现函数的逻辑控制,方便面向过程的程序设计。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-12
你把switch中的因果关系弄反了,switch中的一般结构是case 常量表达式 : 语句,其中常量表达式是你输入的,而语句是执行部分,如果按照你那样会出现逻辑错误。
#include <stdio.h>
void main()
{int grade;
float score;
scanf("%f",&score);
if((score>=90)&&(100>=score))
grade=1;
if((score>=80)&&(89>=score))
grade=2;
if((score>=70)&&(79>=score))
grade=3;
if((score>=60)&&(69>=score))
grade=4;
if(59>=score)
grade=5;

switch(grade)
{
case 1: printf("A\n");break;
case 2: printf("B\n");break;
case 3: printf("C\n");break;
case 4: printf("D\n");break;
case 5: printf("E\n");break;
default:printf("error\n");

}
printf("%c\n",grade);
}
如果加了 printf("%c\n",grade);这句话,则在显示等级后会出现一些表情字符本回答被提问者采纳
第2个回答  2011-03-15
根本就没有判断在那个等级(abcde)的条件啊,那个printf后面的90~100那个只是打印出来而已。
还有就是grade没有初始化变量(int grade)给答案了,感觉还行的话给分,谢谢啦

#include <stdio.h>
void main()
{

int grade,score;
scanf("%d",&grade);

score=grade/10;//把一百分分成几个等级;

if(grade<=100&&grade>0)//防止出现101以后也算到A级的情况
{

switch(score)
{
case 10://90~100分
case 9:

printf("score: A\n");break;

case 8:
printf("score: B\n");break;

case 7:
printf("score: C\n");break;

case 6:
printf("score: D\n");break;

case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
printf("score: E\n");break;

default : printf("error\n");
}
}
else
printf("error\n");

}
第3个回答  2011-03-15
你开关语句的判断条件呢- -。。。。printf("90~100\n");这是打印啊,和你判断有什么关系啊。
相似回答