大一c语言有没有人可以改一下

img


编写一个程序,从键盘上输入几个分数,并转换成相应的gpa。要用到循环多次执行此操作,使用switch语句将grade转换为GPA。

这里没有循环的意思,for这行改成if(grade>=0 && grade<=100)
原for那行后面的{删掉,
原printf那行后面的}删掉

这样你看怎么样?

img

#include<stdio.h>
#define N  5
int main()
{
    int grade[N], gpa[N];
    for (int i = 0; i < N; i++)
    {
        scanf("%d", &grade[i]);
        if (grade[i] >= 0 && grade[i] <= 100)
        {
            switch (grade[i] / 10)
            {
            case 10:
            case 9:
                gpa[i] = 4;
                break;

            case 8:
                gpa[i] = 3;
                break;

            case 7:
                gpa[i] = 2;
                break;

            case 6:
                gpa[i] = 1;
                break;

            default:
                gpa[i] = 0;
            }
            // 输入一个即刻输出对应gpa
            printf("%d\n", gpa[i]);
        }
    }

    return 0;
}


for语句有误

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^