【问题描述】
一个公司有m名推销员,他们都推销n种不同的产品。其中m>=l;m<=100,n>=l,n<=10。每天,每个推销员都要为售出的每一种产品交上来一个卡片,卡片包含:推销员编号(1到m),产品编号(1到n),当天销售额。这样每个推销员每天可能上交0到n张卡片。
请编写个程序,统计某个时间段该公司的销售情况。
【输入形式】
第一行输入两个数m和n,表示该公司有m个推销员,销售n种产品。
后面有若干行数据,每行3个数据i、j、t,表示编号为i的推销员销售j种商品的销售额为t,最后一行-1表示输入结束。
【输出形式】
将销售总额按列表形式打印出来。一个推销员占一行,一个产品占一列。每一行末尾为该推销员的销售总额,每一列的下方为该产品的销售总额。每个输出数据占8位,保留两位小数。
【输入样例】
2 2
1 1 23.00
1 1 48.00
1 2 85.00
1 2 62.00
2 1 58.00
2 2 42.00
2 2 26.00
-1
【输出样例】
Sales Statistics:
71.00 147.00 218.00
58.00 68.00 126.00
129.00 215.00
#include<stdio.h>//先定义一个关于产品的结构体 struct table{double money[11];};int main(){int m,n;int i,j;double t;scanf("%d%d",&m,&n);struct table person[101];//把员工定义出来 double r[11];//用于把单个产品销售额累加 while(1){scanf("%d",&i);if(i==-1){break;}scanf("%d%lf",&j,&t);person[i].money[j]+=t;r[j]+=t;}printf("Sales Statistics:\n");int a,b;double r1;//用于把单个员工的总销售额求出 for(a=1;a<=m;a++){r1=0;for(b=1;b<=n;b++){printf("%8.2lf",person[a].money[b]);r1+=person[a].money[b];}printf("%8.2lf",r1);printf("\n");}int e;for(e=1;e<=n;e++){printf("%8.2lf",r[e]);}return 0;}
代码已经过测试,有问题可提出讨论,代码仅供参考。
一个公司有m名推销员 他们都推销n种不同的产品。其中m>=l;m<=100 n>=l n<=10。每天 每个推销员都要为售出的每一种产品交上来一个卡片。