前端之家收集整理的这篇文章主要介绍了
c – 将整数转换为字母字符,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想根据考试成绩分配成绩.
> A为90-100.
> B为80-89.
> C为70-79.
> D为60-69.
> F为0-59.
我知道如果你使用switch或if..else语句,会有不超过5个语句,但是任何人都有更好的解决方案吗?
我使用ASCII值来解决它,但就代码行而言,它只是相同的.
这是代码:
score/=10;
score=min(9,score);
score=9-score;
score+=65;
if(score<=68)
{
cout<<static_cast<char>(score)<<endl;
}
else
{
cout<<"F"<<endl;
}
在输入选择
数量有限的情况下,标准
方法是使用查找表:
cout << "FFFFFFDCBAA"[score/10];
Demo.
(from comments) could you please explain what’s going on in the code?
字符串文字“FFFFFFDCBAA”被视为const char *指针,它允许应用indexer []运算符.分数以整数除以10,产生0到10之间的数字,包括0和10.字符串中的11个字符对应于“原始”分数的字母等级除以10.
原文链接:https://www.f2er.com/c/116780.html