学生成绩判断函数接口

#define ret_ok  1
#define ret_err 1

int judge_score(int score,char *ch)
{
    if(score > 100 || score < 0)
    {
        printf("The score you input should little than 100 and bigger than 0\n");
        return ret_err;
    }

    switch(score/10)
    {
        case 10:
        case 9:
        *ch = 'A';
        break;
        case 8:
        *ch = 'B';
        break;
        case 7:
        *ch = 'C';
        break;
        case 6:
        *ch = 'D';
        break;
        default:
        *ch = 'E';
        break;
    }
    return ret_ok;
}

int main(int argc,char argv[])
{
    char score = 0;
    char ch = '0/';

    while(scanf("%d",&score)!='q')
    {
        judge_score(score,&ch);
        printf("\r\nresult:%c\r\n",ch);
    }

    return ret_ok;
}

稍微优化之后的代码结构
#define ret_ok  1
#define ret_err 1
#define ALL_VALUE 10
char score_value[]={'A','B','C','D','E','E','E','E','E','E'};

int judge_score_value(int score,char *score_value)
{
    num = score/10;
    if(score > 100 || score < 0)
    {
        printf("Please Input score little than 100 and bigger than 0!\n");
        return ret_err;
    }
    if(num == 10 || num == 9)
        *ch = score_value[0];
    else
        *ch = score_value[ALL_VALUE-num-1];

    return ret_ok;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值