C語(yǔ)言程序設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、學(xué)院程序設(shè)計(jì)工程訓(xùn)練報(bào)告C語(yǔ)言程序設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)課程名稱C語(yǔ)言程序設(shè)計(jì)工程訓(xùn)練姓名院(系)信息科學(xué)與技術(shù)學(xué)院專業(yè)班級(jí)學(xué)號(hào)指導(dǎo)教師教務(wù)處制1 需求分析12 系統(tǒng)總框圖和功能模塊說(shuō)明12.1 系統(tǒng)總框圖12.2 功能模塊說(shuō)明13 系統(tǒng)設(shè)計(jì)23.1 主要結(jié)構(gòu)體錯(cuò)誤!.未定義書(shū)簽。3.2 主要功能函數(shù)錯(cuò)誤!.未定義書(shū)簽。3.3 關(guān)鍵函數(shù)的流程圖74 系統(tǒng)調(diào)試85 總結(jié)106 源程序清單111需求分析設(shè)計(jì)職工工作量統(tǒng)計(jì)系統(tǒng),使之能提供以下功能:系統(tǒng)以菜單方式工作輸入職工工號(hào)和完成的產(chǎn)品數(shù)量,允許同一職工有多次輸入對(duì)其完成的產(chǎn)品數(shù)量實(shí)現(xiàn)累計(jì)。程序按完成數(shù)量對(duì)他們排序,并確定他們的名次(工完成的

2、產(chǎn)品數(shù)量由多到少的順序,輸出名次、同一名次的職工人數(shù)及他們的工號(hào)號(hào)由小到大順序輸出)要求程序用有序鏈表存儲(chǔ)數(shù)據(jù)信息。2系統(tǒng)總框圖和功能模塊說(shuō)明2.1 系統(tǒng)總框圖職工工作量統(tǒng)計(jì)系統(tǒng)輸入信息輸出信息瀏覽信息初始化系統(tǒng)修改信息退出系統(tǒng)圖1系統(tǒng)總框圖2.2 功能模塊說(shuō)明1、輸入信息模塊,完成信息錄入功能,把用戶從終端鍵盤(pán)輸入的信息(工作量,號(hào),姓名)保存在系統(tǒng)中2、瀏覽信息模塊,完成信息輸出功能,把系統(tǒng)中已經(jīng)保存的信息輸出,查看排名3、初始化系統(tǒng)模塊,完成系統(tǒng)初始化操作。4輸出模塊,按需求輸出信息。5、退出系統(tǒng)模塊,完成關(guān)閉程序操作。6、修改信息模塊,包括修改或添加或刪除職工工作量,姓名等信息。3系統(tǒng)

3、設(shè)計(jì)3.1 主要結(jié)構(gòu)體#include<iostream.h>#include<string.h>#include<fstream.h>classstucharname20;doublemuch,sum;public:stu()stu(charn20,doublemuc)strcpy(name,n);much=muc;doublegetsum()sum=much;returnsum;friendvoidmain();3.2 主要功能函數(shù)輸入信息函數(shù)此模塊是輸入職工信息模塊的函數(shù),輸入職工的姓名,工號(hào),及工作量。doswitch(p)case'0

4、9;:charc;charname20;doublemuch;docout<<"請(qǐng)輸入職工姓名"<<endl;cin>>name;cout<<"請(qǐng)輸入產(chǎn)品數(shù)量:"<<endl;cin>>much;filej=newofstream("d:document",ios:ate);*filej<<"姓名"<<name<<"產(chǎn)品數(shù)量"<<much<<endl;j+;si=n

5、ewstu(name,much);i+;cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)"<<endl;cin>>c;flag2=0;修改工作量函數(shù)此模塊要求修改,刪除工作量的函數(shù)cout<<"請(qǐng)輸入您要增加的職工的姓名:"<<endl;cin>>name;cout<<"請(qǐng)輸入產(chǎn)品數(shù)量"<<endl;cin>>much;filej=newofstream("d:document",ios二ate);*fil

6、ej<<"姓名"<<name<<"產(chǎn)品數(shù)量"<<much<<endl;j+;si=newstu(name,much);i+;docout<<"請(qǐng)輸入您要?jiǎng)h除的職工姓名:"<<endl;cin>>name;for(inth=0;h<i;h+)if(strcmp(name,sh->name)=0)flag3=1;i-;dosh=sh+1;h+;while(h<=i);"<<endl;cout<<

7、;"請(qǐng)輸入您要修改的職工的姓名:cin>>name;for(inth=0;h<i;h+)if(strcmp(name,sh->name)=0)flag2=1;cout«"請(qǐng)輸入新完成的產(chǎn)品數(shù)量:"«endl;cin»mat;sh->much+=mat;coutvv”數(shù)據(jù)添加成功!";)查詢模塊函數(shù)此函數(shù)提供查詢職工工作量,及排名的功能dointflag=O;cout«"請(qǐng)輸入你要查詢的職工姓名"«endl;cin»n;for(intj=O;j&l

8、t;i;j+)(if(strcmp(n,(*sj).name)=0)(flag=1;cout«"您要查詢的職工是:"«(*sj),name«endl;cout«(*sj).name«"的總產(chǎn)品數(shù)量是"«(*sj).getsum()«endl;)for(intk=O;k<i;k+)cout«k+1«""«"姓名"«sk->name«"總產(chǎn)品數(shù)量:"vv”"&

9、#171;(*sk),getsum()«endl;)break;)case7':(intt;stub;cout«"本系統(tǒng)所有職工排名如下:"«endl;for(intx=0;x<i-1;x+)(t=x;for(inty=x+1;y<i;y+)(if(st->getsum()<(sy->getsum()t=y;if(t!=x)b=*sx;*sx=*st;*st=b;3.3關(guān)鍵函數(shù)流程圖主函數(shù)流程圖:輸入模塊流程圖修改模塊函數(shù)流程圖4.系統(tǒng)調(diào)試及運(yùn)行界面顯示菜單輸入職工信息界面輸出職工工作量排名刪除職工信息界面

10、添加職工信息界面5.設(shè)計(jì)總結(jié)(課程設(shè)計(jì)心得與體會(huì))經(jīng)過(guò)幾天的C語(yǔ)言課程設(shè)計(jì),感覺(jué)自己收獲不少!這個(gè)課程設(shè)計(jì)里面主要都是用鏈表,因?yàn)橐_(dá)到這樣的功能,使用鏈表相當(dāng)方便,但不容易理解,所以在這方面我很了很多的時(shí)間看課本和參考課外書(shū),使C語(yǔ)言的知識(shí)強(qiáng)化了不少。其次,在做課程設(shè)計(jì)的過(guò)程中,發(fā)現(xiàn)了平時(shí)很多沒(méi)有注意到的問(wèn)題,例如:返回值函數(shù)和不返回值函數(shù)兩者在主函數(shù)中的調(diào)用是不同的更重要的是,這次課程設(shè)計(jì)雖然花了我不少時(shí)間,但正是這些時(shí)間,讓我見(jiàn)識(shí)到了C語(yǔ)言的重要性。由于這是第一次進(jìn)行設(shè)計(jì),寫(xiě)文檔,難免會(huì)寫(xiě)得不好!請(qǐng)見(jiàn)諒!6.程序代碼#include<iostream.h>#include&l

11、t;string.h>#include<fstream.h>classstucharname20;doublemuch,sum;public:stu()stu(charn20,doublemuc)strcpy(name,n);much=muc;doublegetsum()sum=much;returnsum;friendvoidmain();voidmain()cout<<"請(qǐng)選擇您需要的操作!"<<endl;cout<<"操作:"<<endl;cout<<"(0)職

12、工數(shù)據(jù)錄入"<<endl;cout<<"(1)增加職工人員"<<endl;cout<<"(2)刪除職工人員"<<endl;cout<<"(3)新完成的需要添加的產(chǎn)品數(shù)量數(shù)據(jù)"<<endl;cout<<"查詢:"<<endl;cout<<"(4)按總產(chǎn)品數(shù)量查詢"<<endl;cout<<"(5)按職工姓名查詢"<<

13、;endl;cout<<"(6)輸出所有職工的數(shù)據(jù)"<<endl;cout<<"生產(chǎn)量排名名次"<<endl;cout<<"(7)按職工生產(chǎn)的總產(chǎn)品數(shù)量查詢排名"<<endl;"<<endl;cout<<"選擇相關(guān)操作請(qǐng)輸入相對(duì)的括號(hào)里的阿拉伯?dāng)?shù)字!charp;charw;stu*s50;ofstream*file50;inti=0;intj=0;boolflag2=0;docin>>p;if(p>=&

14、#39;0'&&p<二'10')flag2=1;elsecout<<"指令錯(cuò)誤!請(qǐng)重新輸入:"<<endl;while(flag2=0);doswitch(p)case'0':charc;charname20;doublemuch;docout<<"請(qǐng)輸入職工姓名"<<endl;cin>>name;cout<<"請(qǐng)輸入產(chǎn)品數(shù)量:"<<endl;cin>>much;filej=ne

15、wofstream("d:document",ios:ate);*filej<<"姓名"<<name<<"產(chǎn)品數(shù)量"<<much<<endl;j+;si=newstu(name,much);i+;cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)"<<endl;cin>>c;flag2=0;doif(c!='y'&&c!='n')cout<<"指令錯(cuò)誤

16、!請(qǐng)重新輸入!"<<endl;cin>>c;elseflag2=1;while(flag2=0);while(c='y');break;case'1':(charname20;doublemuch;charc;do(cout<<"請(qǐng)輸入您要增加的職工的姓名:"<<endl;cin>>name;cout<<"請(qǐng)輸入產(chǎn)品數(shù)量"<<endl;cin>>much;filej=newofstream("d:docume

17、nt",ios:ate);*filej<<"姓名"<<name<<"產(chǎn)品數(shù)量"<<much<<endl;j+;si=newstu(name,much);i+;cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)"<<endl;cin>>c;if(c!='y'&&c!='n')(cout<<"指令錯(cuò)誤!請(qǐng)重新輸入!"<<endl;cin>

18、>c;while(c='y');break;case'2':(charname20;boolflag3=0;charc;docout<<"請(qǐng)輸入您要?jiǎng)h除的職工姓名:"<<endl;cin>>name;for(inth=0;h<i;h+)if(strcmp(name,sh->name)=0)flag3=1;i-;dosh=sh+1;h+;while(h<=i);)if(flag3=0)cout«"您要求刪除的對(duì)象本來(lái)就不存在!請(qǐng)檢查輸入的正確性!cout«

19、"要繼續(xù)刪除嗎?(y/n)"«endl;cin»c;if(c!='y'&&c!='n')(cout«"指令錯(cuò)誤!請(qǐng)重新輸入!"«endl;cin»c;)while(c='y');break;)case'3':(charname20;doublemat;flag2=0;charc;do(cout<<"請(qǐng)輸入您要修改的職工的姓名:"«endl;cin»name;for(inth=

20、O;h<i;h+)(if(strcmp(name,sh->name)=O)(flag2=1;cout<<"請(qǐng)輸入新完成的產(chǎn)品數(shù)量:"«endl;cin»mat;sh->much+=mat;cout«"數(shù)據(jù)添加成功!)if(flag2=0)(cout«"您要修改的職工本來(lái)就不存在!請(qǐng)檢查重新輸入!cout«"想繼續(xù)修改嗎(y/n)"«endl;cin»c;if(c!='y'&&c!='n')

21、(cout«"指令錯(cuò)誤!請(qǐng)重新輸入!"«endl;cin»c;)n."«endl;while(c='y');break;)case'4':(doublet;charc;do(intflag1=0;cout<<"請(qǐng)輸入你要查詢職工的總產(chǎn)品數(shù)量"<<endl;cin>>t;for(intq=0;q<i;q+)(if(sq->getsum()=t)(flag1=1;cout<<"您要查詢的職工是:"&

22、lt;<(*sq).name<<endl;)if(flag1=0)cout<<"對(duì)不起!您要查詢白職工不存在!"<<endl;cout<<"您想繼續(xù)查詢嗎?(y/n)"<<endl;cin>>c;if(c!='y'&&c!='n')(cout<<"指令錯(cuò)誤!請(qǐng)重新輸入!"<<endl;cin>>c;)while(c='y');break;)case'5

23、':(charn20;intj=0;charc;dointflag=0;cout<<"請(qǐng)輸入你要查詢的職工姓名"<<endl;cin>>n;for(intj=0;j<i;j+)if(strcmp(n,(*sj).name)=0)flag=1;cout<<"您要查詢的職工是:"<<(*sj).name<<endl;cout<<(*sj).name<<"的總產(chǎn)品數(shù)量是"<<(*sj).getsum()<<e

24、ndl;)if(flag=0)cout<<"對(duì)不起!您要查詢的職工不存在!"<<endl;cout<<"您想繼續(xù)查詢嗎?(y/n)"<<endl;cin>>c;if(c!='y'&&c!='n')cout<<"指令錯(cuò)誤!請(qǐng)重新輸入!"<<endl;cin>>c;)while(c='y');break;)case'6':cout<<"本系統(tǒng)所

25、有職工數(shù)據(jù)如下:"<<endl;if(i=0)cout<<"管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!"<<endl;for(intk=0;k<i;k+)cout<<k+1<<""<<"姓名:"<<""<<sk->name<<"總產(chǎn)品數(shù)量:"<<""<<(*sk).getsum()<<endl;)break;)c

26、ase'7':intt;stub;cout<<"本系統(tǒng)所有職工排名如下:"<<endl;for(intx=0;x<i-1;x+)t=x;for(inty=x+1;y<i;y+)if(st->getsum()<(sy->getsum()t=y;if(t!=x)b=*sx;*sx=*st;*st=b;)if(i=0)cout<<"管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!for(intk=0;k<i;k+)(cout<<k+1<<""&l

27、t;<"姓名:"<<""<<sk->name<<"總產(chǎn)品數(shù)量:"<<""<<sk->getsum()<<endl;)break;)case'9':(intt;stub;cout<<"本系統(tǒng)所以職工總產(chǎn)品數(shù)量排名如下:"<<endl;for(intx=0;x<i-1;x+)(t=x;for(inty=x+1;y<i;y+)(if(st->much)<(sy->much)t=y;if(t!=x)(b=*st;*st=*sx;*sx=b;)if(i=0)cout<<"管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!for(int

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論