利用“switch”控制语句建立学校的“评分系统”

问题描述 投票:0回答:1

我是编码之旅的新学习者。我试图建立一个可以收集数字并根据每个单独的数字显示等级的系统。我在 Code::Blocks 中执行此操作。但系统无法正常工作。并且输入每个单独的数字确实非常耗时且难以完成。我尝试了下面的代码-->

#include<stdio.h>
 int main()
 
{ 
int num; 
printf("Enter any number : ");
scanf("%d",&num);

switch(a)
{
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
case 10:
case 11:
case 12:
case 13:
case 14:
case 15:
case 16:
case 17:
case 18:
case 19:
case 20:
case 21:
case 22:
case 23:
case 24:
case 25:
case 26:
case 27:
case 28:
case 29:
case 30:
case 31:
case 32:
    printf("F");
    break;

case 33:
case 34:
case 35:
case 36:
case 37:
case 38:
case 39:
    printf("D");
    break;

case 40:
case 41:
case 42:
case 43:
case 44:
case 45:
case 46:
case 47:
case 48:
case 49:
    printf("C");
    break;

case 50:
case 51:
case 52:
case 53:
case 54:
case 55:
case 56:
case 57:
case 58:
case 59:
    print("B");
    break;

case 60:
case 61:
case 62:
case 63:
case 64:
case 65:
case 66:
case 67:
case 68:
case 69:
    printf("A-");
    break;

case 70:
case 71:
case 72:
case 73:
case 74:
case 75:
case 76:
case 77:
case 78:
case 79:
    printf("A");
    break;

case 80:
case 81:
case 82:
case 83:
case 84:
case 85:
case 86:
case 87:
case 88:
case 89:
case 90:
case 91:
case 92:
case 93:
case 94:
case 95:
case 96:
case 97:
case 98:
case 99:
case 100:
    printf("A+");
    break;

default:
    printf("Not valid");
}

}

我希望如果我输入任何号码,系统会显示该号码的等级。

c switch-statement codeblocks
1个回答
0
投票

很棒的选择 C 是一门很好学的语言。

首先,第79行有错误。你应该使用printf而不是print。

其次,使用 scanf 得到的数字存储在 num 变量中。但是,您尝试对 A 变量使用 switch 语句,该变量未定义且不包含您的值。您应该将 switch 语句与 num 变量一起使用。

要获得更简洁的代码,您应该尝试使用这样的 if 语句:

if(num > = 32) { printf("F"); } else if ...
© www.soinside.com 2019 - 2024. All rights reserved.