#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;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-11 22:04:44