今天的题目总体来说比较容易,提前走的人很多。
第一题难度不大,总体思路就是用指针去遍历成绩条的每个字符,并把字符翻译成分数,将分数累加求和。
#include <stdio.h>
int score(char);//字符翻译成分数的函数
int main()
{
int sum=0;//总分
char line[41];gets(line);//读取成绩条
char *p=line;
while(*p!='\0')//用指针去遍历成绩条的每个字符
{
sum+=score(*p);
p++;
}
printf("%d",sum);
return 0;
}
int score(char ch)
{
switch(ch)
{
case '0':return 1;
case '1':return 25;
case '2':return 18;
case '3':return 15;
case '4':return 12;
case '5':return 10;
case '6':return 8;
case '7':return 6;
case '8':return 4;
case '9':return 2;
case '-':return 0;
}
}
题目描述
世界一级方程式锦标赛(FIA Formula 1 World Championship),简称F1,是由国际汽车运动联合会(FIA)举办的最高等级的年度系列场地赛车比赛,是当今世界最高水平的赛车比赛,与奥运会、世界杯足球赛并称为“世界三大体育盛事”。
目前f1车手积分的计算方法为:
1、前十名记分。2、某站比赛第一名到第10名取得的积分依次为25、18、15、12、10、8、6、4、2、1。现请你写一段程序来计算某站比赛过后,某车手的总积分。
输入:
只有一行,为一个字符串。该字符串包含不多于40个字符,每个字符代表该车手某站比赛的名次。字符串内只包含数字及减号(0代表该车手某站比赛取得第10名,其它数字含义与名次相同,减号代表其它名次)。
输出:只有一个整数,为根据输入数据,计算出的该车手当前的总积分。
输入样例
-11112-2133-11111211
输出样例
384