c語言程式設計
課程設計報告
課設題目: 銷售資訊統計管理系統
班級姓名
學號指導教師
成績2013 年 6 月
一、 任務描述
本次任務要求完成乙個銷售資訊管理統計系統。具體內容為:假定某公司有n個銷售員,負責銷售m種產品。
每個銷售員將當天銷售的每種產品一張便條的形式提交給公司。每張便條內容包括:(1)銷售員編號;(2)銷售產品代號;(3)產品銷售量;(4)產品銷售金額。
本銷售資訊管理統計系統是對所收集的便條進行統計。具體要求如下:
(一)系統以選單方式工作,要求介面清晰,便於操作。
(二)可以將每張便條輸入,並以結構陣列形式儲存資訊。
(三)能夠檢視輸入的便條的內容。
(四)可以實現業績查詢功能,包括以下三種查詢方式:
1.查詢本月某個銷售員某種產品的月銷售額
2.查詢某銷售員月總銷售額
3.查詢某個銷售員每種產品銷售額
(五)統計產品熱銷度,並按從高到低的順序排序加以顯示
(六)生成銷售統計報表
二、 系統概要設計
(一)模組整體設計圖
(二)函式功能介紹
1.主函式void main()
功能:呼叫其他各個函式;
2.選單函式 void menu()
功能:構造系統介面;
3.錄入函式 void input()
功能:輸入資料並用結構陣列儲存;
4.讀取函式 void output()
功能:檢視之前錄入的資料,並以**形式輸出;
5.查詢函式由以下四部分構成
(1)查詢函式介面void menu1()
功能:構造查詢介面,並呼叫其他查詢函式
(2)查詢函式1 void search1()
功能:查詢本月某個銷售員某種產品的月銷售額
(3)查詢函式2 void search2()
功能:查詢某銷售員月總銷售額
(4)查詢函式3 void search3()
功能:查詢某個銷售員每種產品銷售額
6. 產品銷售量統計函式array()
功能:統計每種產品銷售量
7. 統計函式 void count()
功能:統計每種產品的銷售量,並從高到低輸出;
8. 統計報表函式 void form()
功能:以統計報表形式將所有資料顯示出來;
三、 系統詳細設計
(一)資料結構設計
1.本系統採用結構體陣列儲存所錄入的便條資訊,其中,每張便條的結構體如下:
struct *****
staff[max+1];
2.定義如下結構體用來將所有產品的銷售額進行統計處理並按序存放,其結構體如下:
struct sum
product[max+1];
3.定義靜態全域性變數note,用以統計輸入的便條數。
(二)模組介面設計:
1. 各函式原型為:
main主函式*/
void menu選單函式*/
void input錄入函式*/
void output(); /*讀取函式*/
void menu1查詢選單函式*/
void search1(); /*查詢月銷售額函式*/
void search2(); /*查詢月總銷售額函式*/
void search3(); /*查詢產品銷售額函式*/
void array統計產品銷售量函式*/
void count統計產品熱銷售度函式*/
void form生成統計報表函式*/
2.系統介面切換的實現
每個函式在返回上乙個選單時,均採用switch語句進行選擇,例如:
printf("\n\nwhat do you want to do? 1>return to menu 0>exit system");
printf("\n\nplease make choices(0-1):");
scanf("%d",&ch);
switch(ch)
}在main()函式中用do-while語句實現各函式的迴圈呼叫,以使各功能能夠重複實現,直至使用者退出系統為止
(三)盒圖:
1.主函式盒圖:
2.錄入函式盒圖
3. 查詢選單函式盒圖
4. 查詢功能盒圖(以查詢月銷售額函式為例)
5.產品熱銷售度函式盒圖
四、 系統實現
(一)選單介面
(二)錄入介面
(三)輸出介面
(四)查詢介面
(五)查詢1介面
(六)查詢2介面
(七)查詢3介面
(八)產品熱銷度統計介面
(九)銷售統計報表介面
五、 系統除錯
在除錯過程中我遇到的問題以及我的採取措施有:
(1)在我使用中文介面時,便條錄入功能無法實現,即無法將資料存入結構體陣列中,因此我採取了英文介面
(2)在做統計時我本想用以下函式來進行統計
struct sum
sale[m];
void record()
fp=fopen("note","rb");
for(i=1;i<=note;i++)
fread(staff,sizeof(struct *****),1,fp);
if((fp=fopen("staff","rb"))==null)
for(i=1;i<=note;i++)
}fclose(fp);
for(i=1;i<=note;i++)
fwrite(sale,sizeof(struct sum),1,fp1);
fclose(fp1);
}但並沒能除錯出來,因此我將它的功能分解,再來進行統計
(三)還有許多演算法問題,經過耐心的除錯和老師的幫助後,這些問題都一一得到了解決
六、 系統進一步擴充
(1)未能使用檔案儲存資料,每次開啟後,前面的資訊就會丟失,給除錯也帶來很大不便。
(2)當使用者輸入的數字不在要選的範圍內時,不能重新輸入,只能關閉系統後再開啟。
(3)沒有採用人性化的提示語句yes or no來退出功能介面
(4)採用全英文的介面,在國內不能廣泛應用
(5)介面美化程度還有待提高
附錄#include
#include 螢幕操作函式*/
#define max 20
#define n 5
#define m 5
void menu函式宣告*/
void input();
void output();
void menu1();
void search1();
void search2();
void search3();
void array();
void count();
void form();
static int note=0靜態全域性變數note用以統計便條數量
struct *****結構體陣列用於存放便條資訊*/
{ int num;
int pnum;
int pcount;
float money;
VS資訊管理系統課程設計報告
暑期實習報告 目錄引言 3 1 關於系統 3 1.1資訊管理系統的重要性 3 1.2開發學生管理系統的必要性 3 1.3如何開發以及實現的功能 4 2開發環境 4 2.1 visual studio 4 2.2 sql server 5 3系統總體設計 5 3.1系統需求 5 3.2系統功能分析 5...
倉庫資訊管理系統課程設計報告
1 需求分析 倉庫資訊管理系統,對進出貨物進行管理,貨物由貨物號作為主鍵,貨物名稱,貨物 貨物庫存以及貨物商等標識,以及倉庫管理人員的新增,修改,刪除,以及對密碼的管理。需要對貨物的新增,修改,刪除,對貨物的入庫,出庫,貨物數量,經手人,以及進出時間進行記錄,當貨物進行入庫出庫操作時,則在資料庫中會...
C語言課程資訊管理系統課程設計報告
c語言程式設計 課程設計報告 專業 班級 姓名 指導教師 二零一二年十二月二十六日 一 設計題目2 二 設計目的2 三 設計內容2 3.1需求分析2 3.2 概要設計3 3.3 詳細設計6 3.5 編寫過程中遇到的問題及解決辦法7 3.4 除錯結果8 3.6課程設計總結16 四 參考書目17 附錄a...