输出成绩档次(C语言)

描述

给定一个分数n(n是0~100之间的整数),输出对应的成绩档次。各档次如下:

059分: failed
60
69分:pass
7079分:medium
80
89分:good
90~100分:excellence

例如输入50,应输出“failed”;输入70,应输出:“medium”;输入100,应输出“excellence”

格式

输入格式

一个整数n,题目保证0≤n≤100

输出格式

一个字符串,表示成绩对应的档次。




```#include <stdio.h>
int main()
{
    int grade;
    printf("输入一个百分制成绩:");
    scanf("%d",&grade);
    if(grade <0||grade>100)
    {
        printf("输入错误,请重新输入一个1~100的成绩:");
        scanf("%d",&grade);
    }
        if(grade>=90)
            printf("excellencede\n");
        else if (grade<90&&grade>=80)
            printf("good\n");
        else if (grade<80&&grade>=70)
            printf("medium\n");
        else if (grade<70&&grade>=60)
            printf("pass\n");
        else if (grade<60)
            printf("fialed\n");    
        else printf("输入错误,请重新输入一个1~100之间的成绩");
    return 0;
}

此类题目,一般都用 switch-case 结构:

#include <stdio.h>

int main(void)
{
    int grade;
    printf("输入一个百分制成绩:");
    while (true)
    {
        scanf("%d",&grade);
        if (grade <0||grade>100)
            printf("输入错误,请重新输入一个1~100的成绩:");
        else
            break;
    }
    switch (grade/10) {
        case 10:
        case 9:
            printf("excellencede\n");
            break;
        case 8:
            printf("good\n");
            break;
        case 7:
            printf("medium\n");
            break;
        case 6:
            printf("pass\n");
            break;
        default:
            printf("fialed\n");  
            break;
    }

    return 0;
}