版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目錄</b></p><p><b> 一 系統(tǒng)功能2</b></p><p><b> 1系統(tǒng)需求分析2</b></p><p> 2 系統(tǒng)功能總體設(shè)計(jì)2</p><p> 3. 輸入輸出功能2</p><p&
2、gt; 4. 總體設(shè)計(jì)流程圖3</p><p><b> 二 概要設(shè)計(jì)4</b></p><p> 1 抽象數(shù)據(jù)類型定義4</p><p> 2 系統(tǒng)模塊組成及其功能4</p><p><b> 三 詳細(xì)設(shè)計(jì)5</b></p><p> 1 用C語言定義
3、相關(guān)數(shù)據(jù)5</p><p> 2 各模塊的類C碼算法5</p><p> 1 職工信息顯示函數(shù)5</p><p> 2 職工信息的追加函數(shù)6</p><p> 3 職工信息修改函數(shù)6</p><p> 4 職工信息刪除函數(shù)8</p><p> 5 職工信息查詢函數(shù)10&
4、lt;/p><p> 6職工信息排序函數(shù)10</p><p><b> 7退出函數(shù)10</b></p><p> 3 函數(shù)的調(diào)用關(guān)系圖10</p><p> 四 調(diào)試分析(包括流程圖和截圖)11</p><p> 1 顯示模塊N-S圖11</p><p>
5、 2追加模塊的流程圖12</p><p> 3.查詢模塊的流程圖13</p><p> 4.排序模塊的流程圖14</p><p> 5. 修改模塊的流程圖15</p><p> 6刪除模塊流程圖16</p><p> 7. 各個(gè)模塊的截圖及說明17</p><p><
6、b> 五 總結(jié)25</b></p><p><b> 六 參考文獻(xiàn)25</b></p><p> 七 程序原代碼26</p><p><b> 一 系統(tǒng)功能</b></p><p><b> 1系統(tǒng)需求分析</b></p><
7、;p> 這是一個(gè)對(duì)職工信息管理的系統(tǒng),通過這個(gè)系統(tǒng)可以顯示所有職工的信息并可以對(duì)職工信息進(jìn)行追加、修改、刪除、查詢、排序等多種功能的操作.</p><p> 2 系統(tǒng)功能總體設(shè)計(jì)</p><p> 程序的功能:隨著計(jì)算機(jī)科學(xué)的發(fā)展,現(xiàn)在我們不可能還是用手寫的方式對(duì)職工的信息進(jìn)行管理,這就需要設(shè)計(jì)一個(gè)系統(tǒng)運(yùn)用計(jì)算機(jī)來實(shí)現(xiàn)對(duì)職工信息的管理.該系統(tǒng)用數(shù)組實(shí)現(xiàn)對(duì)職工信息數(shù)據(jù)的存儲(chǔ),且總
8、體數(shù)據(jù)結(jié)構(gòu)應(yīng)用文件類型數(shù)據(jù),文件類型為結(jié)構(gòu)體數(shù)組,這就要建立數(shù)據(jù)庫來存放職工的信息,通過指針文件來實(shí)現(xiàn)對(duì)數(shù)據(jù)庫里信息的讀和寫,需要存儲(chǔ)的職工信息包括職工號(hào)、職工姓名、性別、年齡、學(xué)歷、工資、部門、職稱等等,最后通過函數(shù)的調(diào)用來實(shí)現(xiàn)對(duì)職工信息的管理.</p><p><b> 3. 輸入輸出功能</b></p><p> 數(shù)據(jù)庫中的數(shù)據(jù)全通過fread()函數(shù)來讀取
9、數(shù)據(jù),并且通過fwrite函數(shù)將修改過后的數(shù)據(jù)放到一個(gè)新的文件里去,從而實(shí)現(xiàn)的系統(tǒng)的輸入輸出功能。</p><p> 4. 總體設(shè)計(jì)流程圖</p><p><b> 二 概要設(shè)計(jì)</b></p><p> 1 抽象數(shù)據(jù)類型定義</p><p> Struct stu;</p><p>
10、 {long int zgh; /*職工號(hào)*/</p><p> Char name[10]; /*姓名*/</p><p> Char xb[4]; /*性別*/</p><p> Int nl; /*年齡*/</p>&l
11、t;p> Char xl[10]; /*學(xué)歷*/</p><p> Double gz; /*工資*/</p><p> Char bm[15]; /*部門*/</p><p> Char zc[10]; /*職稱*/</p><
12、p><b> }s[40]</b></p><p> 2 系統(tǒng)模塊組成及其功能</p><p> 主函數(shù) void main()</p><p> 顯示函數(shù) void Disp()</p><p> 功能 : 顯示數(shù)據(jù)庫中職工的所有信息。</p><p> 追加函數(shù)
13、 void Appe()</p><p> 功能 : 加入你想加入的職工的信息,可以追加多條,也可以追加多次。</p><p> 修改函數(shù) void Modi()</p><p> 功能 : 修改你想修改的職工的信息,可以修改職工的某項(xiàng)信息,也可以修改多項(xiàng)信息,還可以多次修改其他職工的信息,你可以通過選擇職工號(hào)</p><p&g
14、t; 或者職工的姓名二種方式進(jìn)行修改職工的信息,。</p><p> 刪除函數(shù) void Dele()</p><p> 功能 : 刪除你想刪除的職工的所有信息,可以多次刪除,同樣可以通過職工號(hào)或者職工的姓名二種方式進(jìn)行刪除,刪除后會(huì)顯示刪除結(jié)果。</p><p> 查詢函數(shù) void Query()</p><p>
15、 功能 : 可以通過該函數(shù)來查詢你所需職工的所有信息并顯示,同樣你可以選擇是按職工號(hào)、職工的姓名、工資或者部門來查詢,當(dāng)你查詢的職工不存在時(shí)系統(tǒng)還會(huì)提示你,你所查詢的職工不存在。</p><p> 排序函數(shù) void Sore()</p><p> 功能 : 通過該函數(shù)完成按職工工資降序排列并顯示。</p><p><b> 退出函數(shù)&l
16、t;/b></p><p> 功能 : 完成退出程序。</p><p><b> 三 詳細(xì)設(shè)計(jì)</b></p><p> 1 用C語言定義相關(guān)數(shù)據(jù)</p><p> Struct stu</p><p> {long int zgh;
17、/*職工號(hào)*/</p><p> Char name[10]; /*姓名*/</p><p> Char xb[4]; /*性別*/</p><p> Int nl; /*年齡*/</p><p> C
18、har xl[10]; /*學(xué)歷*/</p><p> Double gz; /*工資*/</p><p> Char bm[15]; /*部門*/</p><p> Char zc[10]; /
19、*職稱*/</p><p><b> }s[40];</b></p><p> 2 各模塊的類C碼算法</p><p> 1 職工信息顯示函數(shù)</p><p> void Disp() /*顯示模塊*/</p><p><b> {</b></p>
20、<p> int i; 定義循環(huán)變量</p><p> system("COLOR 1f"); 調(diào)整顯示界面顏色;</p><p> for(i=0;i<N;i++) 利用for 循環(huán) 將數(shù)據(jù)庫的內(nèi)容出來</p><
21、p> printf("輸出職工信息);</p><p><b> }</b></p><p> 2 職工信息的追加函數(shù)</p><p> void Appe() /*追加模塊*/ </p><p> { int i,p,t;</p><p> void Wr_f
22、ile();</p><p> printf("請(qǐng)輸入你想添加的職工個(gè)數(shù):");</p><p> scanf("%d",&i);</p><p> for(p=0;p<i;p++) (利用for循環(huán)追加想要追加的職工的個(gè)數(shù)) </p&
23、gt;<p> }printf("你還想要追加嗎?是 請(qǐng)按1 否 請(qǐng)按2");scanf("%d",&t);</p><p> if(t==1) Appe();</p><p> printf(“追加后的信息為:”);</p><p> 3 職工信息修改函數(shù)</p><p>
24、; void Modi() /* 修改模塊*/ </p><p> {int n,c,p,i,b=1,j=0,k=1;</p><p> char fname[10];</p><p> int long r;</p><p> system("COLOR 9f"); (控制顏色)</p>
25、<p> void Wr_file();</p><p> printf("請(qǐng)選擇修改方式\n");printf("1:職工號(hào) 2:姓名\n");</p><p> scanf("%d",&n);</p><p> switch(n) {輸入工號(hào)或姓名}</p>
26、<p> for(i=0;i<N;i++)</p><p> {case 1:for(b=1;b<2;)</p><p> {printf("請(qǐng)輸入職工號(hào):");scanf("%ld",&r);</p><p> for(i=0;i<N;i++)</p><p&
27、gt; if(s[i].zgh==r)</p><p> {p=i;j=1;}</p><p><b> switch(j)</b></p><p> {case 0:printf("無此人信息\n");</p><p> scanf("%d",&b);break
28、;</p><p> case 1:for(;k<2;)</p><p> {printf("請(qǐng)選擇修改項(xiàng)目\n"); </p><p> scanf("%d",&c);</p><p> switch(c)(修改并保存)</p><p> Wr_file
29、();</p><p> printf("你還要修改此人其他項(xiàng)目嗎\n");printf("1:yes 2:no\n");</p><p> scanf("%d",&k);</p><p> }if(k==1) continue; (若是k==1則繼續(xù)修改此人的信息) print
30、f("你還要修改其他職工的其他項(xiàng)目嗎\n");</p><p> printf("1:yes 2:no\n");</p><p> scanf("%d",&k);if(k==1) continue;</p><p><b> }break;</b></p>
31、<p> case 2:for(;b<2;)</p><p> {printf("請(qǐng)輸入姓名:");scanf("%s",fname);</p><p> for(i=0;i<N;i++)</p><p> if(strcmp(s[i].name,fname)==0) (判斷是否找到這個(gè)人)<
32、;/p><p> {p=i;j=1;} </p><p> {switch(j)</p><p> case 0:printf("無此人信息\n");</p><p> scanf("%d",&b);break;</p><p> case 1:for(;k<
33、2;)</p><p> {printf("請(qǐng)選擇修改項(xiàng)目\n");</p><p> scanf("%d",&c);</p><p> switch(c)(修改并保存)</p><p> printf("你還要修改此人其項(xiàng)目嗎\n");</p><
34、;p> printf("1:yes 2:no\n");</p><p> scanf("%d",&k);if(k==1) continue;</p><p><b> } break;</b></p><p><b> }</b></p><
35、;p> printf("你還要修改其他職工的其他項(xiàng)目嗎?\n");</p><p> printf("1:yes 2:no\n");</p><p> scanf("%d",&b);</p><p><b> }break;</b></p><
36、p> }break;(修改完了輸出)</p><p><b> } </b></p><p><b> }</b></p><p> 4 職工信息刪除函數(shù)</p><p> void Dele() /*刪除模塊*/</p><p> { int a,b
37、,c,d,x,p,i,j=0;</p><p> char sname[10];</p><p> long int sgh;</p><p> system("COLOR 5f");</p><p> void Quit(); (退出函數(shù))</p><p> printf("請(qǐng)
38、選擇刪除方式\n");</p><p> scanf("%d",&x);</p><p><b> switch(x)</b></p><p> {case 1:for(c=1;c<2;)</p><p> {printf("請(qǐng)輸入刪除工號(hào)\n");
39、scanf("%ld",&sgh);</p><p> for(i=0;i<N;i++)</p><p> if(s[i].zgh==sgh)</p><p> {b=i;j=1;} </p><p><b> switch(j)</b></p><p>
40、 {case 0:printf("無此人\n");printf("還要?jiǎng)h\n");</p><p> printf("1.yes 2.no\n"); 選擇是否還要?jiǎng)h除</p><p> scanf("%d",&c);break;</p><p> case 1:pri
41、ntf("是否刪除此人\n");</p><p> printf("1.yes 2.no\n");</p><p> scanf("%d",&a);</p><p><b> switch(a)</b></p><p> {case 1:for
42、(p=(b+1);p<N;p++)</p><p> {d=b+1;s[b]=s[d];b++;} </p><p><b> N=N-1;</b></p><p> Wr_file();</p><p> printf("還要?jiǎng)h除嗎\n");</p><p>
43、 printf("1.yes 2.no\n"); 選擇是否還要?jiǎng)h除?</p><p> scanf("%d",&c);break;</p><p> case 2:c=2;break;</p><p><b> }</b></p><p><b>
44、}</b></p><p><b> }break;</b></p><p> case 2:for(c=1;c<2;) (按姓名進(jìn)行刪除,用for循環(huán)控制)</p><p> {printf("請(qǐng)輸入刪除姓名\n");scanf("%s",&sname);</p&g
45、t;<p> for(i=0;i<N;i++)</p><p> if(strcmp(s[i].name,sname)==0)</p><p> {b=i;j=1;}</p><p><b> switch(j)</b></p><p> {case 0:printf("無此人\n
46、");printf("是否還要?jiǎng)h除\n");</p><p> printf("1.yes 2.no\n");</p><p> scanf("%d",&c);break;</p><p> case 1:printf("是否刪除此人\n");</p>
47、;<p> printf("1.yes 2.no\n"); 選擇是否刪除?</p><p> scanf("%d",&a);</p><p><b> switch(a)</b></p><p> {case 1:for(p=(b+1);p<N;p++)</
48、p><p> {d=b+1;s[b]=s[d];b++;}</p><p><b> N=N-1;</b></p><p> Wr_file();</p><p> printf("還要?jiǎng)h除嗎\n");</p><p> printf("1.yes 2.no\
49、n");</p><p> scanf("%d",&c);break;</p><p> case 2:c=2;break;</p><p><b> }</b></p><p><b> }</b></p><p><b&
50、gt; }break;</b></p><p> 5 職工信息查詢函數(shù)</p><p> void Query() /*查詢模塊*/ </p><p> {int i,t,flag; long int b;char s1[8];system("COLOR 5f");</p><p> printf(&
51、quot;選擇按職工號(hào)||姓名||工資||部門查詢");</p><p> 查找該職工并顯示其信息}</p><p><b> 6職工信息排序函數(shù)</b></p><p> void Sort() /*排序*/ </p><p> {int i,j;struct stu s1;(定義一個(gè)結(jié)構(gòu)體中間
52、變量)</p><p> system("COLOR 6f");(控制顏色)</p><p> for(i=0;i<N-1;i++)</p><p> for(j=i+1;j<N;j++)</p><p> if(s[i].gz<s[j].gz)</p><p> {s
53、1=s[i];s[i]=s[j];s[j]=s1;}(交換結(jié)構(gòu)體的值)</p><p><b> }</b></p><p><b> 7退出函數(shù)</b></p><p> void Quit() /*退出*/ </p><p> { printf(" ****
54、** Thank you bye ****** \n");</p><p><b> }</b></p><p> 3 函數(shù)的調(diào)用關(guān)系圖</p><p> 四 調(diào)試分析(包括流程圖和截圖)</p><p> 1 顯示模塊N-S圖</p><p><b> j&l
55、t;/b></p><p><b> 2.追加模塊流程圖</b></p><p> 3.查詢模塊的流程圖</p><p> 4.排序模塊的流程圖</p><p> 5. 修改模塊的流程圖</p><p><b> 6刪除模塊流程圖</b></p>
56、<p> 7. 各個(gè)模塊的截圖及說明</p><p> 運(yùn)行程序,進(jìn)入主菜單,顯示如圖所示:</p><p> 系統(tǒng)提供了七個(gè)選項(xiàng),可以通過選擇數(shù)字進(jìn)入你需要的模塊操作。</p><p> 選擇1顯示模塊的截圖如下圖所示:</p><p> 按任意鍵返回主菜單,選擇菜單2進(jìn)入追加模塊的操作, 追加模塊的截圖如下所示:&l
57、t;/p><p> 在該模塊的操作中可以選擇追加一條,也可以追加多條。</p><p> 按任意鍵退出,選擇3進(jìn)入修改模塊的操作截圖如下所示:</p><p> 可以修改一個(gè)職工的某項(xiàng)信息也可以修改多項(xiàng)信息,還可以修改其他職工的信息。</p><p> 按任意鍵退出該模塊,選擇4進(jìn)入刪除模塊的操作,截圖如下:</p><
58、;p> 可以按照兩種方法刪除當(dāng)輸入的人不存在是系統(tǒng)會(huì)給出提示此人不存在,可以進(jìn)行多項(xiàng)刪除。</p><p> 按任意鍵退出,選擇5進(jìn)入查詢模塊的操作,截圖如下:</p><p> 該模塊可以選擇4種方式進(jìn)行查詢,當(dāng)查詢的信息不存在時(shí),會(huì)給出此人不存在的提示,按5鍵退出查詢模塊。</p><p> 按任意鍵退出后進(jìn)入主菜單,選擇6進(jìn)入排序模塊的操作,截圖
59、如下:</p><p> 該排序是按員工的工資降序排列的。選菜單7退出系統(tǒng)截圖如下:</p><p><b> 五 總結(jié)</b></p><p> 在整個(gè)C語言的學(xué)習(xí)過程中讓我學(xué)會(huì)了很多,老師也非常用心的教我們這門課程,帶我們進(jìn)入了這門課程的學(xué)習(xí)。剛開始的時(shí)候是最艱難的,在這里我要感謝老師的用心教導(dǎo),讓我慢慢學(xué)會(huì)了該怎樣去學(xué)習(xí)這種與機(jī)器對(duì)
60、話的語言。經(jīng)過半年的學(xué)習(xí),我們迎來了將近一周的課程設(shè)計(jì),剛拿到題目我嚇到了,啊,要編這么多啊,而且還這么的難,但下來后通過查找資料,通過仔細(xì)思考以及組員的幫助,我還是完成了這次的設(shè)計(jì)任務(wù)。在這次設(shè)計(jì)中我是負(fù)責(zé)編查詢模塊的,另外我還編了排序模塊,編的過程中遇到了很多的問題,但還是一一解決了,但在調(diào)試的過程中還是出現(xiàn)了很多的錯(cuò)誤,這就需要我們仔細(xì)的發(fā)現(xiàn)問題和培養(yǎng)解決問題的能力,在這個(gè)方面我還是學(xué)習(xí)的不夠。所以在以后的學(xué)習(xí)過程中我應(yīng)該要培養(yǎng)自
61、己的邏輯思維能力。</p><p> 在設(shè)計(jì)程序時(shí)首先要理解各個(gè)模塊的作用,只有這樣才能為設(shè)計(jì)好程序做好鋪墊。在這次程序設(shè)計(jì)中我發(fā)現(xiàn)了其他組員的設(shè)計(jì)模塊還存在著不足,這就需要我們認(rèn)真思考程序中存在的不足,同時(shí)可以和其他組的同學(xué)一起討論,學(xué)習(xí)的過程交流也是非常重要的。此外課后我們還需要和老師多交流,好好利用學(xué)習(xí)資源。程序答辯時(shí)我的程序出現(xiàn)了一點(diǎn)點(diǎn)小問題,雖然通過自己的檢查還是解決了問題但它教會(huì)了我在平時(shí)要更用心的
62、去檢查和調(diào)試程序。通過這次一周的程序設(shè)計(jì)我明白只有抱著認(rèn)真的態(tài)度才能做好每一件事,最后我要感謝我的老師,謝謝你的用心指導(dǎo)。</p><p><b> 六 參考文獻(xiàn)</b></p><p> 《C語言程序案例分析》 人民郵電出版社</p><p> 《C語言程序設(shè)計(jì)》(第2版) 北京
63、郵電大學(xué)出版社</p><p> 《C程序設(shè)計(jì)》(第三版) 清華大學(xué)出版社</p><p> 《C語言程序設(shè)計(jì)案例分析》 人民郵電出版社</p><p><b> 七 程序原代碼</b></p><p> #include "stdio.h
64、"</p><p> #include <stdlib.h></p><p> #include "string.h"</p><p> #include "conio.h"</p><p><b> int N=0;</b></p>&
65、lt;p> struct stu</p><p> { long int zgh; /*職工號(hào)*/</p><p> char name[10]; /*姓名*/</p><p> char xb[4]; /*性別*/</p><p> int nl;
66、 /*年齡*/</p><p> char xl[10]; /*學(xué)歷*/</p><p> double gz; /*工資*/</p><p> char bm[15]; /*部門*/</p><p> char zc[
67、10]; /*職稱*/</p><p><b> }s[40];</b></p><p> void Re_file()</p><p><b> {</b></p><p> FILE *fp; 定義一個(gè)指針文件 &
68、lt;/p><p> fp=fopen("D:\\rsdak.txt","r"); 打開文件所指的文件,進(jìn)行讀取文件里的內(nèi)容</p><p> while( fscanf(fp,"%ld\n%s\n%s\n%d\n%s\n%lf\n%s\n%s\n",&s[N].zgh,s[N].name,s[N].xb,&
69、s[N].nl,s[N].xl,&s[N].gz,s[N].bm,s[N].zc)!=EOF) N++;</p><p> fclose(fp); 關(guān)閉文件</p><p><b> }</b></p><p> void Wr_file()</p><p><b
70、> {int i;</b></p><p><b> FILE *fp;</b></p><p> fp=fopen("D:\\nwersk.txt","w"); 打開文件把文件里的內(nèi)容寫到新的文件里</p><p> for(i=0;i<N;i++)</p>
71、;<p> fprintf(fp,"%ld\n%s\n%s\n%d\n%s\n%lf\n%s\n%s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p> fclose(fp);</p><p><b> }</b><
72、;/p><p> void Disp() /*顯示模塊*/</p><p><b> {int i;</b></p><p> system("COLOR 2f");</p><p> printf("***************************************
73、********************************\n");</p><p> printf("職工號(hào) 姓名 性別 年齡 學(xué)歷 工資 部門 職稱\n");</p><p> for(i=0;i<N;i++) 用for循環(huán)把職工的信息顯示出來</p><p>
74、<b> { </b></p><p> printf("%-6ld %-6s %-4s %-5d %-7s %-10.2lf %-10s %-4s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p><b> }&
75、lt;/b></p><p> printf("************************************************************************\n");</p><p><b> }</b></p><p> void Appe() /*追加模塊*/ <
76、;/p><p> { int i,p,t;</p><p> void Wr_file();</p><p> printf("請(qǐng)輸入你想添加的職工個(gè)數(shù):");</p><p> scanf("%d",&i);</p><p> for(p=0;p<i;p+
77、+) 定義P來控制追加的職工的個(gè)數(shù)</p><p><b> {</b></p><p> printf("pleasinput 職工號(hào):"); /*輸入追加的職工號(hào)*/</p><p> scanf("%ld
78、",&s[N].zgh);</p><p> printf("\nplease inpue 姓名:"); /*輸入追加的姓名*/</p><p> scanf("%s",s[N].name);</p><p> printf("\npleaseinput 性別:");
79、 /*輸入追加的性別*/</p><p> scanf("%s",&s[N].xb);</p><p> printf("\npleaseinput 年齡:"); /*輸入追加的年齡*/</p><p> scanf("%d",&s[N].nl);</p>&l
80、t;p> printf("\nplease input學(xué)歷:"); /*輸入追加的學(xué)歷*/</p><p> scanf("%s",s[N].xl);</p><p> printf("\npleaseinput 工資:"); /*輸入追加的工資*/</p><p> s
81、canf("%lf",&s[N].gz);</p><p> printf("\npleaseinput 部門:"); /*輸入追加的部門*/</p><p> scanf("%s",s[N].bm);</p><p> printf("\nplease input職
82、稱:"); /*輸入追加的職稱*/</p><p> scanf("%s",s[N].zc);</p><p> printf("\n next \n");</p><p><b> N++;</b></p><p> }printf("
83、你還想要追加嗎?是 請(qǐng)按1 否 請(qǐng)按2");scanf("%d",&t);</p><p> if(t==1) Appe();</p><p><b> }</b></p><p> void Modi() /* 修改模塊*/ </p><p> {int n,c,p,
84、i,b=1,j=0,k=1;</p><p> char fname[10];</p><p> int long r;</p><p> system("COLOR 9f"); 控制顏色</p><p> void Wr_file();</p><p> printf(&q
85、uot;請(qǐng)選擇修改方式\n");printf("1:職工號(hào) 2:姓名\n");</p><p> scanf("%d",&n);</p><p><b> switch(n)</b></p><p> {case 1:for(b=1;b<2;)</p><
86、;p> {printf("請(qǐng)輸入職工號(hào):");scanf("%ld",&r);</p><p> for(i=0;i<N;i++) </p><p> if(s[i].zgh==r) 判斷輸入的職工號(hào)是否存在</p><p> {p=i;j=1;} 若庫文件
87、里存在輸入的職工號(hào)則p=i代表已經(jīng)找到</p><p><b> switch(j)</b></p><p> {case 0:printf("無此人信息\n");</p><p> scanf("%d",&b);break;</p><p> case 1:for
88、(;k<2;)</p><p> {printf("請(qǐng)選擇修改項(xiàng)目\n");</p><p> printf("**********************************************************\n");</p><p> printf("**
89、 **\n");</p><p> printf("** 1:性別 2:年齡 3:學(xué)歷 4:工資 5:部門 6:職稱 7:退出 **\n");</p><p> printf("**
90、 **\n");</p><p> printf("**********************************************************\n");</p><p> scanf("%d",&c);</p><p> if(c==7) break;
91、</p><p><b> switch(c)</b></p><p> {case 1:printf("請(qǐng)輸入性別\n");scanf("%s",s[p].xb);break;</p><p> case 2:printf("請(qǐng)輸入年齡\n");scanf("%d&q
92、uot;,&s[p].nl);break;</p><p> case 3:printf("請(qǐng)輸入學(xué)歷\n");scanf("%s",s[p].xl);break;</p><p> case 4:printf("請(qǐng)輸入工資\n");scanf("%lf",&s[p].gz);break;&
93、lt;/p><p> case 5:printf("請(qǐng)輸入部門\n");scanf("%s",s[p].bm);break;</p><p> case 6:printf("請(qǐng)輸入職稱\n");scanf("%s",s[p].zc);break;</p><p><b> }
94、</b></p><p> Wr_file();</p><p> printf("你還要修改此人其他項(xiàng)目嗎\n");printf("1:yes 2:no\n");</p><p> scanf("%d",&k);</p><p> }if(k==1)
95、continue; </p><p> printf("你還要修改其他職工的其他項(xiàng)目嗎\n");</p><p> printf("1:yes 2:no\n");</p><p> scanf("%d",&k);if(k==1) continue;</p><p
96、><b> }break;</b></p><p> case 2:for(;b<2;)</p><p> {printf("請(qǐng)輸入姓名:");scanf("%s",fname);</p><p> for(i=0;i<N;i++)</p><p> i
97、f(strcmp(s[i].name,fname)==0) 判斷輸入的姓名是否存在</p><p> {p=i;j=1;}</p><p><b> switch(j)</b></p><p> {case 0:printf("對(duì)不起,找不到此人信息\n");printf("還要繼續(xù)\n");
98、</p><p> printf("1.yes 2.no\n");scanf("%d",&b);if(b==1) continue;</p><p> case 1:for(;k<2;)</p><p> {printf("請(qǐng)選擇修改項(xiàng)目\n");</p><p&g
99、t; printf("************************************************\n"); printf("** **\n");</p><p> printf("** 1:性別 2年齡 3學(xué)歷 4:工資 5部門 6職稱 7:退
100、出 **\n");</p><p> printf("** **\n");</p><p> printf("************************************************\n");</p><p&
101、gt; scanf("%d",&c); </p><p> if(c==7) break;</p><p> switch(c) 定義一個(gè)開關(guān)語句來修改職工的某項(xiàng)信息</p><p> {case 1:printf("請(qǐng)輸入性別\n");scanf("%s",s[p].xb)
102、;break;</p><p> case 2:printf("請(qǐng)輸入年齡\n");scanf("%d",&s[p].nl);break;</p><p> case 3:printf("請(qǐng)輸入學(xué)歷\n");scanf("%s",s[p].xl);break;</p><p>
103、; case 4:printf("請(qǐng)輸入工資\n");scanf("%lf",&s[p].gz);break;</p><p> case 5:printf("請(qǐng)輸入部門\n");scanf("%s",s[p].bm);break;</p><p> case 6:printf("請(qǐng)輸入
104、職稱\n");scanf("%s",s[p].zc);break; }</p><p> Wr_file();</p><p> printf("你還要修改此人其項(xiàng)目嗎\n");</p><p> printf("1:yes 2:no\n");</p><p>
105、scanf("%d",&k);if(k==1) continue;</p><p><b> } break;</b></p><p><b> }</b></p><p> printf("你還要修改其他職工的其他項(xiàng)目嗎\n");</p><p&g
106、t; printf("1:yes 2:no\n");</p><p> scanf("%d",&b);</p><p><b> }break;</b></p><p><b> }break;</b></p><p><b> }
107、 </b></p><p><b> }</b></p><p> void Dele() /*刪除模塊*/</p><p> { int a,b,c,d,x,p,i,j=0;</p><p> char sname[10];</p><p> long int sgh
108、;</p><p> system("COLOR 5f"); 控制顏色</p><p> void Quit();</p><p> printf("請(qǐng)選擇刪除方式\n");</p><p> printf("******************************\n
109、");</p><p> printf("** **\n");</p><p> printf("** 1:職工號(hào) 2:姓名 3:退出 **\n");</p><p> printf("** **\
110、n");</p><p> printf("******************************\n");</p><p> scanf("%d",&x);</p><p> switch(x) 定義一個(gè)開關(guān)語句來選擇按哪種方式刪除職工的信息</p><p>
111、{case 1:for(c=1;c<2;)</p><p> {printf("請(qǐng)輸入刪除工號(hào)\n");scanf("%ld",&sgh);</p><p> for(i=0;i<N;i++)</p><p> if(s[i].zgh==sgh) 判斷要?jiǎng)h除的職工信息庫文件里是否存在</p&g
112、t;<p> {b=i;j=1;} </p><p><b> switch(j)</b></p><p> {case 0:printf("無此人\n");printf("還要?jiǎng)h除嗎\n");</p><p> printf("1.yes 2.no\n");&
113、lt;/p><p> scanf("%d",&c);break;</p><p> case 1:printf("是否刪除此人\n");</p><p> printf("1.yes 2.no\n");</p><p> scanf("%d",&am
114、p;a);</p><p><b> switch(a)</b></p><p> {case 1:for(p=(b+1);p<N;p++)</p><p> {d=b+1;s[b]=s[d];b++;} </p><p><b> N=N-1;</b></p><
115、p> Wr_file();</p><p> printf("還要?jiǎng)h除嗎\n")</p><p> ;printf("1.yes 2.no\n");</p><p> scanf("%d",&c);break;</p><p> case 2:c=2;bre
116、ak;}</p><p><b> }</b></p><p><b> }break;</b></p><p> case 2:for(c=1;c<2;)</p><p> {printf("請(qǐng)輸入刪除姓名\n");scanf("%s",&am
117、p;sname);</p><p> for(i=0;i<N;i++)</p><p> if(strcmp(s[i].name,sname)==0) 判斷要?jiǎng)h除的職工庫文件里是否存在</p><p> {b=i;j=1;}</p><p><b> switch(j)</b></p>
118、<p> {case 0:printf("無此人\n");printf("還要?jiǎng)h除嗎\n");</p><p> printf("1.yes 2.no\n");</p><p> scanf("%d",&c);break;</p><p> case 1:p
119、rintf("是否刪除此人\n");</p><p> printf("1.yes 2.no\n");</p><p> scanf("%d",&a);</p><p><b> switch(a)</b></p><p> {case 1:f
120、or(p=(b+1);p<N;p++)</p><p> {d=b+1;s[b]=s[d];b++;}</p><p><b> N=N-1;</b></p><p> Wr_file();</p><p> printf("還要?jiǎng)h除嗎\n");printf("1.yes 2
121、.no\n");</p><p> scanf("%d",&c);break;</p><p> case 2:c=2;break;</p><p><b> }</b></p><p><b> }</b></p><p>&l
122、t;b> }break;</b></p><p> case 3:Quit();break;</p><p><b> }</b></p><p><b> }</b></p><p> void Query() /*查詢模塊*/ </p><p>
123、; { int i,t,flag;</p><p> long int b;</p><p> double c;</p><p> char s1[8];</p><p> system("COLOR 5f");</p><p> printf("\n
124、 | =================================\n");</p><p> printf(" | 1.按職工號(hào)查詢 |\n");</p><p> printf(" | 2.按姓名查詢
125、 |\n");</p><p> printf(" | 3.基本工資查詢 |\n");</p><p> printf(" | 4.按部門查詢 |\n"); </p&
126、gt;<p> printf(" | 5.退出本菜單 |\n");</p><p> printf(" =================================\n");</p><p> while(1) &l
127、t;/p><p><b> {</b></p><p> flag=0; </p><p> printf(" 請(qǐng)輸入子菜單編號(hào): ");</p><p> scanf("%d",&t);</p><p>
128、 switch(t) 用開關(guān)語句控制按哪種方式查詢職工的信息</p><p><b> {</b></p><p><b> case 1:</b></p><p> printf(" 請(qǐng)輸入要查詢的職工號(hào): ");</p><p
129、> scanf("%ld",&b);</p><p> for(i=0;i<N;i++)</p><p> if(s[i].zgh==b) 判斷輸入的職工號(hào)是否存在</p><p><b> {</b></p><p> flag=1;
130、 職工號(hào)存在flag=1顯示查詢的職工的信息</p><p> printf("================================================================================");</p><p> printf("職工號(hào) 姓名 性別 年齡 學(xué)歷 工資 部門
131、 職稱\n"); </p><p> printf("%-6ld %-6s %-4s %-5d %-7s %-10.2lf %-10s %-4s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p> printf("=
132、===============================================================================\n");</p><p><b> }</b></p><p> if(flag==0)</p><p> printf("該職工號(hào)不存在! \n"
133、);break;</p><p><b> case 2:</b></p><p> printf(" 請(qǐng)輸入要查詢的姓名: ");</p><p> scanf("%s",&s1);</p><p> for(i=0;i<N;i
134、++)</p><p> if(strcmp(s[i].name,s1)==0) 判斷輸入的職工姓名是否存在</p><p><b> {</b></p><p> flag=1; 職工姓名存在flag=1顯示查詢的職工的信息</p><p> printf("==============
135、==================================================================");</p><p> printf(" 職工號(hào) 姓名 性別 年齡 學(xué)歷 工資 部門 職稱 \n ");</p><p> printf("%-6ld %-6s %
136、-4s %-5d %-7s %-10.2lf %-10s %-4s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p> printf("=======================================================================
137、=========\n");</p><p><b> }</b></p><p> if(flag==0)</p><p> printf("該姓名不存在!\n");break;</p><p><b> case 3:</b></p><
138、p> printf(" 請(qǐng)輸入要查詢的基本工資: ");</p><p> scanf("%lf",&c);</p><p> for(i=0;i<N;i++)</p><p> if(s[i].gz==c) 判斷輸入的工資在文件庫里是否有職工的工資與其相
139、同</p><p><b> {</b></p><p> flag=1; 已經(jīng)找到顯示符合條件的職工的信息</p><p> printf("================================================================================&q
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- c語言程序設(shè)計(jì)-職工信息管理系統(tǒng)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告--職工信息管理系統(tǒng)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告----學(xué)生信息管理系統(tǒng)
- 圖書信息管理系統(tǒng)-c語言程序設(shè)計(jì)
- 圖書信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告--c語言程序設(shè)計(jì)
- 圖書信息管理系統(tǒng)-《c語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告
- 圖書館信息管理系統(tǒng)-c語言程序設(shè)計(jì)
- c語言課程設(shè)計(jì)報(bào)告----職工信息管理系統(tǒng)設(shè)計(jì)
- c語言課程設(shè)計(jì)報(bào)告---職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告--職工信息管理系統(tǒng)
- 《c++面向?qū)ο蟪绦蛟O(shè)計(jì)》課程設(shè)計(jì)——職工信息管理系統(tǒng)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)--學(xué)生宿舍信息管理系統(tǒng)
- c語言課程設(shè)計(jì)---職工信息管理系統(tǒng)設(shè)計(jì)
- c語言課程設(shè)計(jì)--職工信息管理系統(tǒng)
- 職工信息管理系統(tǒng)c語言課程設(shè)計(jì)
- c語言課程設(shè)計(jì)職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)---職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)——職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)——職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)—職工信息管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論