查看單個文章
舊 2006-01-11, 12:53 PM   #2 (permalink)
mini
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:97 | 在線時長:9858小時 | 升級還需:138小時級別:97 | 在線時長:9858小時 | 升級還需:138小時級別:97 | 在線時長:9858小時 | 升級還需:138小時級別:97 | 在線時長:9858小時 | 升級還需:138小時級別:97 | 在線時長:9858小時 | 升級還需:138小時級別:97 | 在線時長:9858小時 | 升級還需:138小時級別:97 | 在線時長:9858小時 | 升級還需:138小時
註冊日期: 2002-12-07
文章: 13342
精華: 0
現金: 26446 金幣
資產: 3024306 金幣
預設

語法:
 ╲銷售員
  產@   一  二  三  四
  品 ︱=================
  [1]︱
  [2]︱
  [3]︱
  [4]︱
  [5]︱
語法:
#include <cstdlib>
#include <iostream>

//以下中文 變數名 請自行改成 英文

#define 銷售員共有 4
#define 產品共有 5

//定義一個報告的結構
typedef struct
{
   int 銷售員編號;
   int 產品編號;
   int 產品當天銷售金額;
}report;

using namespace std;

int main(int argc, char *argv[])
{
	long sumtemp=0;
	int i,j;
	FILE *inp;
	report 銷售報告;
	int sales[銷售員共有][產品共有]={0};

	inp=fopen("MonthReport.bin","rb");
	while(!feof(inp)){
		fread(&銷售報告,sizeof(銷售報告),1,inp);
		//因為C/C++的陣列是從 0開始編號所以 -1
		sales[銷售報告.銷售員編號 -1][銷售報告.產品編號 -1]= 
			sales[銷售報告.銷售員編號 -1][銷售報告.產品編號 -1]+ 銷售報告.產品當天銷售金額;
	}
	fclose(inp);

	for(j=0; j<產品共有; j++){
	   for(i=0; i<銷售員共有; i++){
	   	sumtemp=sumtemp+sales[i][j];
		printf("%d\t",sales[i][j]); //列印sales[i][j]
	   }
	   printf("<=產品的總銷售額:%ld\n",sumtemp); //列印每項產品的總銷售額
	   sumtemp=0;
 	}

	//列印每位銷售員的業績 (自成一列)
	for(i=0; i<銷售員共有; i++){
	   for(j=0; j<產品共有; j++){
		sumtemp=sumtemp+sales[i][j];
	   }
     	   printf("%ld\t",sumtemp);
	   sumtemp=0;
 	}

    system("PAUSE");
    return EXIT_SUCCESS;
}
語法:
/*這個程式必須配合 MonthReport.bin 格式
所以以下是 月報告成檔 程式		*/

#include <cstdlib>
#include <iostream>

//以下中文 變數名 請自行改成 英文

#define SN 4
#define GN 5

//定義一個報告的結構
typedef struct
{
   int serno;
   int goodsno;
   int goodsm;
}report;

using namespace std;

int main(int argc, char *argv[])
{
	FILE *inp;
	report sreport;

	inp=fopen("MonthReport.bin","wb");
    	//輸入當天報告 
	for(int i=0; i<SN; i++){
  	  sreport.serno=i+1;
                  for(int j=0; j<GN; j++){
		printf("銷售員編號[%d]\n請輸入 %d號產品銷售金額: ",i+1,j+1);
		sreport.goodsno=j+1;
                                scanf("%d",&sreport.goodsm);
		fwrite(&sreport,sizeof(sreport),1,inp);
                  }
                printf("\n");
                }
	fclose(inp);

    system("PAUSE");
    return EXIT_SUCCESS;
}
請參考: http://imil.au.edu.tw/~hsichcl/TurboC/C_Unit12.htm
mini 目前線上  
送花文章: 2013, 收花文章: 8001 篇, 收花: 26805 次
回覆時引用此帖