Hdu2004

2004 成绩转换

Problem Description

输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;

 

Input

输入数据有多组,每组占一行,由一个整数组成。

 

Output

对于每组输入数据,输出一行。如果输入数据不在0~100范围内,请输出一行:“Score is error!”。

 

前一个是我自己的代码 比较简单的想法

#include<stdio.h>

int main() {
    int a;
    while(scanf("%d",&a)!=EOF)
{
    if(90<=a&&a<=100)
            printf("A\n");
    else if(80<=a&&a<=89)
            printf("B\n");
    else if(70<=a&&a<=79)
            printf("C\n");
    else if(60<=a&&a<=69)
            printf("D\n");
    else if(0<=a&&a<=59)
            printf("E\n");
    else if(a>=100||a<=0)
            printf("Score is error!\n");
        }
    return 0;
}

后一个是我觉得我没有想到应该学习的代码

#include <stdio.h>

int main(void)
{
    int score;
    char convert[] = "EEEEEEDCBAA";

    while(scanf("%d", &score) != EOF) {
          if(score < 0 || score > 100)
              printf("Score is error!\n");
          else
              printf("%c\n", convert[score/10]);
    }

    return 0;
}

c++如下

#include<iostream>
using namespace std;
int main()
{
    double score;
    while(cin>>score)
    {
        if(score<0||score>100)
            cout<<"Score is error!"<<endl;
        if(0<=score&&score<=59)
            cout<<"E"<<endl;
        if(60<=score&&score<=69)
            cout<<"D"<<endl;
        if(70<=score&&score<=79)
            cout<<"C"<<endl;
        if(80<=score&&score<=89)
            cout<<"B"<<endl;
        if(90<=score&&score<=100)
            cout<<"A"<<endl;
    }
    return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值