题目描述
每到月末,小明就会对这个月的支出账单进行整理和统计。如今电脑已经普及大学校园,所以小明想让电脑帮忙做这件事情。聪明的你就为小明编一个程序来完成这件事情吧。
输入
多实例测试。首先输入一个整数ncase,表示测试实例的个数。每个测试实例的输入如下:
第一行是整数n (n<100)。然后是n行的账单信息,每一行由事物的名字name和对应的花费c组成,长度不超过200。中间会有一个或多个空格,而每一行的开头和结尾没有空格。 0.0 < c < 1000.0。
输出
每个测试实例对应一行输出,输出总的花费,小数点后保留一位数字。
样例输入
2
1
Buy books 62.28
3
Apple 2.3
Buy clothes for girl friend 260.5
Go to cinema 30
样例输出
62.3
292.8
注意用法:
strrchr()查找字符在指定字符串中从右面开始的第一次出现的位置,如果成功,返回该字符以及其后面的字符,如果失败,则返回 NULL
sscanf()会将参数str的字符串根据参数format字符串来转换并格式化数据
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int ncase, n;
double sum, money=0;
char *str, *c;
str = (char *)malloc(200*sizeof(char));
scanf("%d", &ncase);
for(int i = 0; i < ncase; i++){
scanf("%d", &n);
getchar();
sum = 0;
while(n--){
gets(str);
c = strrchr(str, ' ');
sscanf(c,"%lf", &money);
sum += money;
}
printf("%.1lf\n", sum);
}
return 0;
}