找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1809|回复: 5
收起左侧

一个简单的c系统判定成绩等级程序,请朋友们看看哪里有问题

[复制链接]
ID:480306 发表于 2019-5-4 10:32 | 显示全部楼层 |阅读模式
为什么这个程序不能运行出成绩等级呀?
#include <stdio.h>
int main()
{
        int score;
       
        scanf("%d ", &score);
        if (score < 60)
        {
                printf("This leval is E");
        }
        else if (score >= 60 && score < 70)
        {
                printf("This leval is D");
        }
        else if (score >= 70 && score < 80)
        {
                printf("This leval is C");
        }
        else if (score >= 80 && score < 90)
        {
                printf("This leval is B");
        }
        else  printf("This leval is A");
}

回复

使用道具 举报

ID:477932 发表于 2019-5-5 00:10 | 显示全部楼层
拿出吧,不谢!

#include <stdio.h>

int main()
{
        int  a;
       
        printf("输入数值:\n");
    scanf("%d", &a);
        printf("输入数是:%d\n", a);
       
        if(a < 60)
                printf("This leval is E\n");
       
        else if( a >= 60 && a < 70)
                printf("This leval is D\n");
       
        else if( a >= 70 && a < 80)
                printf("This leval is C\n");
       
        else if( a >= 80 && a < 90)
                printf("This leval is B\n");
       
    else printf("This leval is A\n");
       
        return 0;
}
回复

使用道具 举报

ID:472242 发表于 2019-5-5 00:32 | 显示全部楼层
你的错误在于你&score写进的数跟本读不出来,用 printf("%d",score)没有数值输出来,后面的判断都没意义,要学会查错的方法。遇到问题时抓住一个点,将不相关部份屏蔽掉,一步一步查,没有那么难。
回复

使用道具 举报

ID:462827 发表于 2019-5-5 12:42 | 显示全部楼层
要学会自我调试,先检查你的变量有没有正常接收到数字
回复

使用道具 举报

ID:449211 发表于 2019-5-5 14:14 | 显示全部楼层
scanf("%d ", &score)的%d后面多了一个空格,删除即可。
回复

使用道具 举报

ID:249001 发表于 2019-5-5 18:30 | 显示全部楼层
int main()
{
        int score;
        while(1)
    {
        scanf("%d ", &score);
        if (score < 60)
        {
                printf("This leval is E");
        }
        else if (score >= 60 && score < 70)
        {
                printf("This leval is D");
        }
        else if (score >= 70 && score < 80)
        {
                printf("This leval is C");
        }
        else if (score >= 80 && score < 90)
        {
                printf("This leval is B");
        }
        else  printf("This leval is A");
     }
}
   要加while(1),否则程序只执行一次,还没等到输入成绩就执行完了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表