求解怎么让这个循环跳出来


#include <stdio.h>
int main()
{
    int score, degree ;
            printf("please input score:");
            scanf_s("%d", &score);
            while (score < 0 || score >100)
            {
                printf("score is illegal!\n");
                continue;
            }
        if(score>=0&&score<=100)
        {
        degree = (int)(score / 10);
        switch (degree)
        {
        case 10:
            printf("corresponding degree is A\n");
            break;
        case 9:
            printf("corresponding degree is A\n");
            break;
        case 8:
            printf("corresponding degree is B\n");
            break;
        case 7:
            printf("corresponding degree is C\n");
            break;
        case 6:
            printf("corresponding degree is D\n");
            break;
        default:
            printf("corresponding degree is E\n");
            break;
        }
    }
    return 0;
}

结果是这样的

img


输入大于100的数这个score is illegal!就一直停不下来了
怎么改成就只有一个score is illegal然后再让我输入score再运行

注意while循环,你这样不就死循环了。

img

修改处见注释,供参考:

#include <stdio.h>
int main()
{
    int score, degree ;
    printf("please input score:");
    while (1){               //(score < 0 || score >100)  修改
        scanf("%d", &score);
        if (score < 0 || score >100){  //修改
             printf("score is illegal!\nplease input score:"); //修改
                       //continue; 修改
        }
        else           //修改
             break;
    }
    if(score>=0&&score<=100)
    {
        degree = (int)(score / 10);
        switch (degree)
        {
        case 10:
                   //printf("corresponding degree is A\n"); 修改
                   //break;                                 修改
        case 9:
            printf("corresponding degree is A\n");
            break;
        case 8:
            printf("corresponding degree is B\n");
            break;
        case 7:
            printf("corresponding degree is C\n");
            break;
        case 6:
            printf("corresponding degree is D\n");
            break;
        default:
            printf("corresponding degree is E\n");
            break;
        }
    }
    return 0;
}

把输入语句加进去