1. 程式人生 > >NYOJ-1483(取資料)

NYOJ-1483(取資料)

1483-計算清單

  • 記憶體限制:64MB 時間限制:3000ms 特判: No
  • 通過數:44 提交數:103 難度:0

題目描述:

大學!一個消費極高的地方!總是剋制不住自己,55555。不想吃土的學姐想到一個剋制住自己的方法——計算出每日的花費。用這個數字嚇嚇自己,就不會再想要買其它東西了。 但學姐不想自己算,就讓你幫她寫個程式。。。 沒有酬勞,謝謝。

輸入描述:

輸入含有一些資料組,每組資料包括學姐買的東西的名字,數量(計量單位不論,一律為double型數)和單價(double型數,表示人民幣元數),因此,每組資料的價格就是數量乘上單價啊。名字、數量和單價之間都有空格隔開的。
注意:程式以檔案結束符“EOF”結束輸入。

輸出描述:

付錢的時候,由於最小支付單位是角,所以總是在支付的時候採用四捨五入的方法。最後,請輸出一個精度為角的菜價總量(保留小數點後一位)。

樣例輸入:

複製

火龍果 2 5.1
提子 2 2.5
煎餅 2 4.2

樣例輸出:

23.6

提示:

用程式碼取資料:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
const int maxn=1e4;
void Get_foodname(int sign,char *np)
{
    switch(sign)
    {
     case 0:strcpy(np,"2");break;
     case 1:strcpy(np,"2");break;
     case 2:strcpy(np,"2");break;
     case 3:strcpy(np,"3");break;
    }
}
int main()
{
    char a[100];
    int t;
    int mid;
    double sum=0;
    FILE *fp1,*fp2;
    fp1=fopen("../1.in","w");
    fp2=fopen("../1.out","w");
    srand(time(NULL));     //撒下種子
    scanf("%d",&t);
    while(t--)
    {
        mid=rand()%4;
        Get_foodname(mid,a);
//        if(a[0]=='#')
//                break;
        mid=rand()%maxn;
        double cou,price;
        cou=(double)mid/100.0;
        mid=rand()%maxn;
        price=(double)mid/100.0;
        fprintf(fp1,"%s %.2lf %.2lf\n",a,cou,price);
        sum+=cou*price;

    }
  fprintf(fp2,"%.1lf\n",sum);
  fclose(fp1);
  fclose(fp2);
    return 0;
}