<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文範例為大家分享了C語言實現銷售管理系統的具體程式碼,供大家參考,具體內容如下
該設計要求學生以某公司銷售管理業務為背景,設計、開發一套“銷售管理系統”軟體。
通過該題目的設計過程,可以培養學生結構化程式設計的思想,加深對高階語言基本語言要素和控制結構的理解,針對c語言中的重點和難點內容進行訓練,獨立完成有一定工作量的程式設計任務,同時強調好的程式設計風格。得到軟體工程的綜合訓練,提高解決實際問題的能力。
1、查閱文獻資料,一般在5篇以上;
2、以某公司銷售管理業務為背景,通過調研、分析現有的管理模式和已有的管理軟體,建立系統模型;
3、完成軟體結構設計和演演算法設計;
4、完成系統的軟體開發和測試工作;
5、撰寫設計說明書;
6、做好答辯工作。
1、問題分析及解決方案框架確定:充分地分析和理解問題本身,弄清要求做什麼。在確定解決方案框架過程中,綜合考慮系統功能,考慮怎樣使系統結構清晰、合理、簡單和易於偵錯。最後確定每個過程和函數的簡單功能,以及過程(或函數)之間的呼叫關係,並畫出函數之間的呼叫關係圖。
2、詳細設計和編碼:定義相應的儲存結構,確定各個函數的演演算法,並畫出流程圖,在此基礎上進行程式碼設計,每個明確的功能模組程式一般不超過60行,否則要進一步劃分。
3、上機前程式靜態檢查:上機前程式靜態檢查可有效提高偵錯效率,減少上機偵錯程式時的無謂錯誤。靜態檢查主要有兩種途徑:用一組測試資料手工執行程式;通過閱讀或給別人講解自己的程式而深入全面地理解程式邏輯。把程式中的明顯錯誤事先排除。
4、程式偵錯與測試:採用自底向上,分模組進行,即先偵錯低層函數。能夠熟練掌握偵錯工具的各種功能,設計測試資料確定疑點,通過修改程式來證實它或繞過它。偵錯正確後,認真整理源程式及其註釋,形成格式和風格良好的源程式清單和結果。
5、完成課程設計報告
① 需求和規格說明:設計題目和問題描述:題目要解決的問題是什麼;
② 設計思路:主要演演算法思想,程式功能圖,函數之間的呼叫關係圖;
設計表示:每個函數或過程的功能,列出每個過程或函數所呼叫的過程或函數,並畫出各函數的流程圖;
詳細設計:主要演演算法的虛擬碼;
③ 偵錯報告:偵錯過程中遇到的主要問題,是如何解決的;對設計和編碼的回顧討論和分析;改進設想;經驗和體會等;
④ 程式實現註釋;
⑤ 附錄:源程式清單和結果。如果題目規定了測試資料,則結果要求包含這些測試資料和執行輸出,當然還可以含其他測試資料和執行輸出。
6、某公司有四個銷售員(編號:1-4),負責銷售五種產品(編號:1-5)。每個銷售員都將當天出售的每種產品各寫一張便條交上來。每張便條包含內容: 銷售員的代號 、產品的代號、這種產品的當天的銷售額 。每位銷售員每天可能上繳0-5張便條。假設,收集到了上個月的所有便條,編寫一個處理系統,讀取上個月的銷售情況,進行如下處理:
系統以選單方式工作,錄入資訊用檔案儲存;計算上個月每個人每種產品的銷售額; 按銷售額對銷售員進行排序,輸出排序結果(銷售員代號);統計每種產品的總銷售額,對這些產品按從高到底的順序,輸出排序結果(需輸出產品的代號和銷售額);輸出統計報表。
下面是原始碼:
#include "stdio.h" /*輸入輸出函數*/ #include "stdlib.h"/*通用應用程式函數*/ typedef struct/*定義結構體變數*/ { int gonghao; /*銷售員代號*/ int a1; /*產品一代號*/ int a2; /*產品二代號*/ int a3; /*產品三代號*/ int a4; /*產品四代號*/ int a5; /*產品五代號*/ }DATA; int menu_select(); /*宣告函數*/ int enter(); /*宣告函數*/ void salor(int n); /*宣告函數*/ int sum(DATA t[100],int n, int e); /*宣告函數*/ void list1(int n);/*宣告函數*/ void list2();/*宣告函數*/ main()/*主函數*/ { int length; system("color 3b"); for( ; ; )/*無限迴圈*/ {switch(menu_select()) /*根據使用者的選擇判斷該呼叫哪個功能函數*/ { case 1:length=enter();break; case 2:salor(length);break; case 3:list1(length);break; case 4:list2();break; case 0:exit(0); } } } int menu_select() /*選單函數*/ { int n; printf(" 選單 nn"); printf(" 設計人:吳繼康、付鵬陽 班級:計算機一班n"); printf(" 1 輸入便條上的內容n"); printf(" 2 統計上個月每種產品每人銷售的數量n"); printf(" 3 按銷售額將銷售員排序n"); printf(" 4 銷售報表n"); printf(" 0 退出n"); printf("---------------------------------end---------------------------nn"); printf(" 請輸入(0-4) "); scanf("%d",&n); return n; } int enter() /*清單輸入*/ { int i,num; FILE *fp; DATA t[100]; printf("請輸入要寫的便條條數:n"); scanf("%d",&num); printf("工號 電腦 電視 冰箱 風扇 手機"); for(i=0;i<num;i++) { printf("nn------------------------------------n"); scanf("%dt %dt %dt %dt %dt %d",&t[i].gonghao,&t[i].a1,&t[i].a2,&t[i].a3,&t[i].a4,&t[i].a5); } if((fp=fopen("wujikang.dat","ab+"))==NULL) { printf("不能開啟檔案n"); exit(1); } for(i=0;i<num;i++) { fprintf(fp,"%dt%dt%dt%dt%dt%dt",t[i].gonghao,t[i].a1,t[i].a2,t[i].a3,t[i].a4,t[i].a5); fprintf(fp,"rn"); } fclose(fp); printf("n-----------------------------------nnn"); return i; } void salor(int n) /*每位銷售員銷售額*/ { int i=0,s; int b1=0,b2=0,b3=0,b4=0,b5=0; int k=0; DATA t[100]; FILE *fp; if((fp=fopen("wujikang.dat","rb+"))==NULL) { printf("不能開啟檔案n"); exit(1); } rewind(fp); while(fscanf(fp,"%dt%dt%dt%dt%dt%d",&(t[k].gonghao),&(t[k].a1),&(t[k].a2), &(t[k].a3),&(t[k].a4),&(t[k].a5))>0) k++; fclose(fp); printf("請輸入要查詢售貨員的代號(1-4):"); scanf("%d",&s); for(i=0;i<k;i++) if(t[i].gonghao==s) {b1+=t[i].a1; b2+=t[i].a2; b3+=t[i].a3; b4+=t[i].a4; b5+=t[i].a5;}; printf("工號 電腦 電視 冰箱 風扇 手機n"); printf("%dt %dt %dt %dt %dt %dt",s,b1,b2,b3,b4,b5); } void list1 (int n) /*顯示清單*/ { int i,j,s; int m[10],c[10]; int k=0; DATA t[100]; FILE *fp; if((fp=fopen("wujikang.dat","rb+"))==NULL) { printf("不能開啟檔案n"); exit(1); } rewind(fp); while(fscanf(fp,"%dt%dt%dt%dt%dt%d",&(t[k].gonghao),&(t[k].a1),&(t[k].a2), &(t[k].a3),&(t[k].a4),&(t[k].a5))>0) /*從fp指向的檔案上讀入便條資訊*/ k++; fclose(fp); for(i=0;i<4;i++) /*將所輸入的條數存入結構體陣列中*/ m[i]=i+1; for(i=0;i<4;i++) c[i]=sum(t,k,m[i]); for(i=0;i<4;i++) for(j=i+1;j<4;j++) if(c[i]<c[j]) { s=m[i]; m[i]=m[j]; m[j]=s; s=c[i]; c[i]=c[j]; c[j]=s; } printf("按銷售額從高到低將銷售員代號排序n"); for(i=0;i<4;i++) printf("%dn",m[i]); } void list2() /*每種產品的銷售額*/ { int i=0,j,sum0=0,sum1=0,sum2=0,sum3=0,sum4=0,sum5=0; int c[4],b1[4]={0},b2[4]={0},b3[4]={0},b4[4]={0},b5[4]={0}; int k=0; DATA t[100]; FILE *fp; if((fp=fopen("wujikang.dat","rb+"))==NULL) { printf("不能開啟檔案n"); exit(1); } rewind(fp);//qingchucuowu,zhiyutoubu while(fscanf(fp,"%dt%dt%dt%dt%dt%d",&(t[k].gonghao),&(t[k].a1),&(t[k].a2), &(t[k].a3),&(t[k].a4),&(t[k].a5))>0) k++; for(i=0;i<4;i++) c[i]=sum(t,k,i+1);/*求每個人的總銷售額*/ for(i=0;i<4;i++) sum0+=c[i]; /*所有產品的銷售額*/ for(i=0;i<k;i++) /*求每個人每種產品的總銷售額*/ for(j=0;j<4;j++) { if(j+1==t[i].gonghao) {b1[j]+=t[i].a1; b2[j]+=t[i].a2; b3[j]+=t[i].a3; b4[j]+=t[i].a4; b5[j]+=t[i].a5; } } for(i=0;i<4;i++)/*每種產品的總銷售額*/ {sum1+=b1[i]; sum2+=b2[i]; sum3+=b3[i]; sum4+=b4[i]; sum5+=b5[i]; } printf("-------------------------銷售報表----------------------nnn"); printf(" products numn"); printf(" 銷售員t1t2t3t4t5t總和nn"); for(i=0;i<4;i++) printf(" %dt%dt%dt%dt%dt%dt%dtn",i+1,b1[i],b2[i],b3[i],b4[i],b5[i],c[i]); printf("psum %dt%dt%dt%dt%dt%dt",sum1,sum2,sum3,sum4,sum5,sum0); } int sum(DATA t[100],int n, int e) { int i=0,sum=0; for(i=0;i<=n;i++) if(e==t[i].gonghao) {sum+=t[i].a1; sum+=t[i].a2; sum+=t[i].a3; sum+=t[i].a4; sum+=t[i].a5; } return sum; }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45