首页 > ACM题库 > HDU-杭电 > hdu 2090 算菜价[解题报告]C++
2013
12-29

hdu 2090 算菜价[解题报告]C++

算菜价

问题描述 :

妈妈每天都要出去买菜,但是回来后,兜里的钱也懒得数一数,到底花了多少钱真是一笔糊涂帐。现在好了,作为好儿子(女儿)的你可以给她用程序算一下了,呵呵。

输入:

输入含有一些数据组,每组数据包括菜种(字串),数量(计量单位不论,一律为double型数)和单价(double型数,表示人民币元数),因此,每组数据的菜价就是数量乘上单价啊。菜种、数量和单价之间都有空格隔开的。

输出:

输入含有一些数据组,每组数据包括菜种(字串),数量(计量单位不论,一律为double型数)和单价(double型数,表示人民币元数),因此,每组数据的菜价就是数量乘上单价啊。菜种、数量和单价之间都有空格隔开的。

样例输入:

青菜 1  2
罗卜 2  1.5
鸡腿 2  4.2

样例输出:

13.4

原题点击打开链接

#include<stdio.h>
main()
{
double sum=0,a,b;
char s[1000];
    while(scanf("%s%lf %lf",s,&a,&b)!=EOF)
    sum=a*b+sum;
    printf("%.1lf\n",sum);
}

也可以用c的结构来算,不过麻烦的多。这个题自身有缺陷,没有说明输入终止条件,不过一般情况下,采用EOF的文件输入终止模式。

解题转自:http://blog.csdn.net/budatuacm/article/details/9396559


  1. 问题3是不是应该为1/4 .因为截取的三段,无论是否能组成三角形, x, y-x ,1-y,都应大于0,所以 x<y,基础应该是一个大三角形。小三角是大三角的 1/4.

  2. 5.1处,反了;“上一个操作符的优先级比操作符ch的优先级大,或栈是空的就入栈。”如代码所述,应为“上一个操作符的优先级比操作符ch的优先级小,或栈是空的就入栈。”