标题:少了满分一百分的情况,如何在外层用一个if else嵌套语句完善这题
只看楼主
王派小哥
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2021-5-8
结帖率:100%
已结贴  问题点数:20 回复次数:8 
少了满分一百分的情况,如何在外层用一个if else嵌套语句完善这题

百分制成绩转换为五级制
#include<stdio.h>
int main( )
{
    int score;
    printf("请输入一个百分制成绩:\n");
    scanf("%d",&score);
    switch(score/10)
    {
        case 9:printf("成绩等级为A。\n");break;
        case 8:printf("成绩等级为B。\n");break;
        case 7:printf("成绩等级为C。\n");break;
        case 6:printf("成绩等级为D。\n");break;
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:printf("成绩等级为E。\n");
        default:printf("成绩输入错误!\n");
    }
}
搜索更多相关主题的帖子: case break 成绩 printf 等级 
2021-05-08 15:51
mindfulness
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:27
专家分:110
注 册:2021-5-8
得分:3 
可尝试case0 加条件分支,

程序代码:
case 0:{ if(score==100) 
            printf("成绩等级为A。\n");
        else
            printf("成绩等级为E。\n");
        }break;

/*
*  Simple love, simple C.
*/
2021-05-08 15:57
王派小哥
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2021-5-8
得分:0 
回复 2楼 mindfulness
好的,谢谢,我试一试
2021-05-08 16:07
夏天q
Rank: 4
来 自:七月
等 级:业余侠客
威 望:5
帖 子:33
专家分:227
注 册:2021-4-4
得分:10 
可以这样做
程序代码:
#include<stdio.h>
int main() {
    int score;
    printf("请输入一个百分制成绩:\n");
    scanf("%d", &score);
    if(score == 100)
        printf("成绩满分!\n");
    else {
        switch(score/10) {
            case 9:
                printf("成绩等级为A。\n");
                break;
            case 8:
                printf("成绩等级为B。\n");
                break;
            case 7:
                printf("成绩等级为C。\n");
                break;
            case 6:
                printf("成绩等级为D。\n");
                break;
            case 5:
            case 4:
            case 3:
            case 2:
            case 1:
            case 0:
                printf("成绩等级为E。\n");
                break;   //这个地方需要加一个break;
            default:
                printf("成绩输入错误!\n");
        }
    }
}
2021-05-08 16:22
王派小哥
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2021-5-8
得分:0 
回复 4楼 夏天q
蟹蟹谢谢!打出来了可以编译运行

[此贴子已经被作者于2021-5-8 17:52编辑过]

2021-05-08 17:51
王派小哥
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2021-5-8
得分:0 
回复 2楼 mindfulness
这个我试了好像不行
2021-05-08 17:51
mindfulness
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:27
专家分:110
注 册:2021-5-8
得分:5 
回复 6楼 王派小哥
我只是说case上的if条件嵌套例子。
话说你的这个问题加个case 10 不香吗?
程序代码:
#include<stdio.h>
int main( )
{
    int score;
    printf("请输入一个百分制成绩:\n");
    scanf("%d",&score);
    printf("scoreore=%d\n",score);
    switch(score/10)
    {
        case 10:
        case 9:printf("成绩等级为A。\n");break;
        case 8:printf("成绩等级为B。\n");break;
        case 7:printf("成绩等级为C。\n");break;
        case 6:printf("成绩等级为D。\n");break;
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:printf("成绩等级为E。\n");break;
        default:printf("成绩输入错误!\n");
    }
    return 0;
}

/*
*  Simple love, simple C.
*/
2021-05-09 05:07
王派小哥
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2021-5-8
得分:0 
回复 7楼 mindfulness
加了一个case 10的话有个缺点,100~109都是等级A了
2021-05-09 22:04
初始化
Rank: 1
等 级:新手上路
帖 子:1
专家分:2
注 册:2021-5-10
得分:2 
我也才开始学习,菜鸟一枚,多多指教
程序代码:
#include<stdio.h>
int main( )
{
    int score;
    printf("请输入一个百分制成绩:\n");
    scanf("%d",&score);
    printf("scoreore=%d\n",score);
    if(score<=100&&score>=0){
    switch(score/10)
    {
        case 10:
        case 9:printf("成绩等级为A。\n");break;
        case 8:printf("成绩等级为B。\n");break;
        case 7:printf("成绩等级为C。\n");break;
        case 6:printf("成绩等级为D。\n");break;
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:printf("成绩等级为E。\n");break;
        //default:printf("成绩输入错误!\n");
    }
    }
    else{
    printf("成绩输入错误!\n");
    }
    return 0;
}


[此贴子已经被作者于2021-5-10 02:44编辑过]

2021-05-10 02:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-505692-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.070722 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved