C语言为什么输入成绩101分后会显示等级,正常是数据错误才对? c语言用if判断成绩等级
- C语言 输入成绩输出对应等级?
- C语言设计程序对输入的百分制的学成成绩,判断所属等级
- C语言从键盘输入一个一百分制成绩,如果不在0~100范围内,则要求重新输入数据,直到输入的数据在0~100范围内。将输入的数据转换成等级‘A’,‘B’,‘C’,‘D’,‘E’。90分以上为‘A’,80
- C语言:输入某学生的成绩,经处理后给出学生的等级,等级分类:90分以上是A,80至90分:B。。60分以下:E
C语言 输入成绩输出对应等级?
比较简单的做法是利用嵌套的if语句来实现,它的特点是应用灵活简便,可以不受分界点位置的限制,而且可以适用于浮点数。
float x;
int a,b,c,d,e;
a=b=c=d=e=0;
while(scanf("f",&x)==1)
if(x<=100)
if(x>=90){a++;putchar('A');}
else if(x>=80){b++;putchar('B');}
else if(x>=70){c++;putchar('C');}
else if(x>=60){d++;putchar('D');}
else {e++;putchar('E');}
C语言设计程序对输入的百分制的学成成绩,判断所属等级
int a;
scanf("%d",a);
if(a>=90)
printf("%c",'A');
else if(a>=80)
printf("%c",'B');
else if(a>=70)
printf("%c",'C');
else if(a>=60)
printf("%c",'D');
else
printf("%c",'E');
C语言从键盘输入一个一百分制成绩,如果不在0~100范围内,则要求重新输入数据,直到输入的数据在0~100范围内。将输入的数据转换成等级‘A’,‘B’,‘C’,‘D’,‘E’。90分以上为‘A’,80
#include
void main(void)
{
int mark;
float score;
char grade;
do{
printf("please input the score<0-100>:");
scanf("%f", &score);
if (score <= 100)
{
mark = (int) (score / 10);
switch (mark)
{
case 10:
case 9:
grade = 'A';
printf("score=%.1f,grade=%c\n", score, grade);
break;
case 8:
grade ='B';
printf("score=%.1f,grade=%c\n", score, grade);
break;
case 7:
grade = 'C';
printf("score=%.1f,grade=%c\n", score, grade);
break;
case 6:
grade = 'D';
printf("score=%.1f,grade=%c\n", score, grade);
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
grade = 'E';
printf("score=%.1f,grade=%c\n", score, grade);
break;
}
}
else
printf("\n");
}while (score < 0 || score > 100);
C语言:输入某学生的成绩,经处理后给出学生的等级,等级分类:90分以上是A,80至90分:B。。60分以下:E
#include <stdio.h>
int main()
{
int a, b;
scanf("%d",&a);
b=a/10;
switch(b)
{
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;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:printf("E\n");break;
default:printf("出错\n");
}
}