HDU 成绩转换

这篇博客探讨了如何用C语言更简洁地实现成绩到等级的转换。作者指出,传统的switch或if语句可能导致代码冗长,然后分享了一种使用数组的高效方法。通过将成绩映射到数组索引,可以快速找到对应的成绩等级。代码示例展示了如何根据成绩的十位数从数组中获取等级,并处理边界条件,如无效的成绩。
摘要由CSDN通过智能技术生成

我首先看到这个题 是初学者题目 非常简单

我第一时间在想 switch和if是不是能够最简单的解决的 我以为是的

但其实 这样代码冗长非常的麻烦

然后在网上一位博主处看到了使用数组的解法

首先给数组赋值

通过顺序 排位

来让成绩/10得到十位来表示成绩

除此之外呢 若使用switch也要/10  得到case后数字

下下策就是if嵌套不再多说了

#include<stdio.h>
int main()
{
int t;
char i[]="EEEEEEDCBA";
    while(scanf("%d",&t) != EOF)
    {
        if(t<0||t>100)
            printf("Score is error!\n");
        else
            printf("%c\n",i[t/10]);
    }    
return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值