user-0 提问: 求教各位，帮帮忙

回复:
user: user-1
content: 输入百分制成绩，输出五级制成绩。90-100分输出A，80-89分输出B，70-79分输出C，60-69分输出D，60分以下输出E。编程要求： （1）用if语句嵌套实现，输入成绩超出0-100，输出错误信息。 （2）用switch语句实现，输入成绩超出0-100，输出错误信息 #include <stdio.h> #include <stdlib.h> int main() {     int score;     scanf("%d",&score);     printf("if语句判断:\n");      if(score>=90&&score<=100)         printf("A\n");     else if(score>=80&&score<90)         printf("B\n");       else if(score>=70&&score<80)         printf("C\n");     else if(score>=60&&score<70)         printf("D\n");     else if(score>=0&&score<60)         printf("E\n");     else printf("输入的数字%d不在0-100之内\n",score);          printf("switch语句判断：\n");      switch(score/10){     	case 10:switch(score%10){                     case 0:printf("A\n");break;                     default:printf("输入的数字%d不在0-100之内\n",score);break;                 }break;         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("输入的数字%d不在0-100之内\n",score);break;       }     return 0; } 运行结果如下: 当输入数字满足条件时:  当输入数字不满足条件时:

user: user-2
content: 引用 1 楼 user-3 的回复: #include <stdio.h> #include <stdlib.h>  int main() {     int score;     scanf("%d",&score);     if(score>=0&&score<60)         printf("E\n");     else if(score>=60&&score<70)         printf("D\n");     else if(score>=70&&score<80)         printf("C\n");     else if(score>=80&&score<90)         printf("B\n");     else if(score>=90&&score<=100)         printf("A\n");     else printf("错误信息\n");     switch(score/10){         case 0:case 1:case 2:case 3:case 4:case 5:printf("E\n");break;         case 6:printf("D\n");break;         case 7:printf("C\n");break;         case 8:printf("B\n");break;         case 9:printf("A\n");break;         case 10:switch(score%10){                     case 0:printf("A\n");break;                     default:printf("错误信息\n");break;                 }break;         default:printf("错误信息\n");break;     }     return 0; }     #include <stdio.h> #include <stdlib.h>  int main() {     int score;     scanf("%d",&score); #if 0     if(score>=0&&score<60)         printf("E\n");     else if(score>=60&&score<70)         printf("D\n");     else if(score>=70&&score<80)         printf("C\n");     else if(score>=80&&score<90)         printf("B\n");     else if(score>=90&&score<=100)         printf("A\n");     else printf("错误信息\n"); #else     if (score < 0 || score > 100) {         printf("错误信息\n");         return -1;     }     switch(score/10){         case 0:         case 1:         case 2:         case 3:         case 4:         case 5:printf("E\n");break;         case 6:printf("D\n");break;         case 7:printf("C\n");break;         case 8:printf("B\n");break;         case 9:         case 10:printf("A\n");break;     } #endif     return 0; }  这样代码是不是更简洁一些，不至于switch里面套switch。

user: user-3
content: 引用 3 楼 dululululu 的回复:输入百分制成绩，输出五级制成绩。90-100分输出A，80-89分输出B，70-79分输出C，60-69分输出D，60分以下输出E。编程要求： （1）用if语句嵌套实现，输入成绩超出0-100，输出错误信息。 （2）用switch语句实现，输入成绩超出0-100，输出错误信息 #include <stdio.h> #include <stdlib.h> int main() {     int score;     scanf("%d",&score);     printf("if语句判断:\n");      if(score>=90&&score<=100)         printf("A\n");     else if(score>=80&&score<90)         printf("B\n");       else if(score>=70&&score<80)         printf("C\n");     else if(score>=60&&score<70)         printf("D\n");     else if(score>=0&&score<60)         printf("E\n");     else printf("输入的数字%d不在0-100之内\n",score);          printf("switch语句判断：\n");      switch(score/10){     	case 10:switch(score%10){                     case 0:printf("A\n");break;                     default:printf("输入的数字%d不在0-100之内\n",score);break;                 }break;         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("输入的数字%d不在0-100之内\n",score);break;       }     return 0; } 运行结果如下: 当输入数字满足条件时:  当输入数字不满足条件时:   这样我试过，但是有一个问题是你输入101~109它就不符合要求了

user: user-3
content: #include <stdio.h> #include <stdlib.h>  int main() {     int score;     scanf("%d",&score);     if(score>=0&&score<60)         printf("E\n");     else if(score>=60&&score<70)         printf("D\n");     else if(score>=70&&score<80)         printf("C\n");     else if(score>=80&&score<90)         printf("B\n");     else if(score>=90&&score<=100)         printf("A\n");     else printf("错误信息\n");     switch(score/10){         case 0:case 1:case 2:case 3:case 4:case 5:printf("E\n");break;         case 6:printf("D\n");break;         case 7:printf("C\n");break;         case 8:printf("B\n");break;         case 9:printf("A\n");break;         case 10:switch(score%10){                     case 0:printf("A\n");break;                     default:printf("错误信息\n");break;                 }break;         default:printf("错误信息\n");break;     }     return 0; }