c语言给出一百分制成绩,90分以上为A, 80-89分为B, 70-79分为C, 60-69分为D, 60分以下为E 。

2024-11-17 16:24:09
推荐回答(5个)
回答1:

#include 
int main()
{
    int x;
    while(scanf("%d",&x)!=EOF)
    {
        if(x>100||x<0)
            printf("Wrong Input!");
        else if(x>=90)
            printf("A\n");
        else if(x>=80)
            printf("B\n");
        else if(x>=70)
            printf("C\n");
        else if(x>=60)
            printf("D\n");
        else //if(x<60)
            printf("E\n");
    }
    return 0;
}

百分,应该有范围判断,另外90不对。

回答2:

#include 
int main()
{
int x;
while(scanf("%d",&x)!=EOF)
{  if(x>=90)//掉等号了,不然90没地方去了..
     printf("A\n");
else if(x>=80&&x<=89)//掉了else,下面一样
printf("B\n");
else if(x>=70&&x<=79)
printf("C\n");
else if(x>=60&&x<=69)
printf("D\n");
else 
printf("E\n");

}
return 0;
}

回答3:

你只需加上>100、<0的无效判断,>=90的判断,就可以了。至于else可以加也可以不加,从执行效率上讲,加else要好一些。不加else,每次都会逐个判断,加上else时,判断成功后就做下一循环。

回答4:

#include 
int main()
{
    int x;
printf("请输入分数(百分制):");
    scanf("%d",&x);
while(x>100||x<0)
{
printf("您输入的分数有误,请重新输入:");
scanf("%d",&x);
}
if(x>=90)
printf("A\n");
else if(x>=80)
printf("B\n");
else if(x>=70)
printf("C\n");
else if(x>=60)
printf("D\n");
else 
printf("E\n");

    return 0;
}

回答5:

EOF是什么意思?
还有你这样做的话90这个数被你漏了
if之后还要带if的话需要加else即else if