c语言编程题:成绩转换(switch-case语句使用)

题目:编写程序将一个百分制成绩转换为5分制成绩。

  • 大于等于90分为A。
  • 小于90分,大于等于80分为B。
  • 小于80分,大于等于70分为C。
  • 小于70分,大于等于60分为D。
  • 小于60分为E。

编程思路分析

  1. 输入一个百分制成绩(数字)。
  2. 运算(转换)。
  3. 输出一个5分制成绩。

重点运算思路

分析:

  1. if-else语句和switch-case语句都可以使用在转换步骤中。

    但是if-else语句只能逐句对比,switch-case语句则可以直接对应到转换值,所以使用switch-case语句更为方便。
  2. 在这里score可以做一个处理,因为我们实际上只是看输入成绩的十位上的数字,所以可以除以10,让其直接显示十位上的数字,简化判断过程。

实现代码如下:本次代码两个语句都使用了,各取所需。

#include

int main(){
    int score;
    
    scanf("%d", &score);
    
    //1.用级联if else if
    /*if( score >= 90 ){
        printf("A");
    }else if(score >= 80){
        printf("B");
    }else if(score >= 70){
        printf("C");
    }else if(score >= 60){
        printf("D");
    }else{
        printf("E");
    }*/
    
    //2.使用switch - case语句,但是使用之前要先做处理
    score /= 10;
    switch ( score ){
        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;
    }
    
    return 0;
}

你可能感兴趣的:(c,c语言,算法,开发语言)