C語(yǔ)言畢業(yè)論文報(bào)告_第1頁(yè)
C語(yǔ)言畢業(yè)論文報(bào)告_第2頁(yè)
C語(yǔ)言畢業(yè)論文報(bào)告_第3頁(yè)
C語(yǔ)言畢業(yè)論文報(bào)告_第4頁(yè)
C語(yǔ)言畢業(yè)論文報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩27頁(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)介

課名稱

計(jì)算機(jī)高語(yǔ)言課設(shè)計(jì)C)教姓名

剛本生名本生業(yè)所院系類:日:

郭勇權(quán)機(jī)械設(shè)計(jì)造及其動(dòng)化機(jī)電學(xué)院C.本科生2013.7.11

課程設(shè)計(jì)評(píng)語(yǔ)對(duì)課程文的語(yǔ)平時(shí)成:總成績(jī):注、評(píng)閱簽成績(jī)效

課程論成績(jī)?cè)u(píng)閱人名:2必須鋼或圓筆閱用鉛閱無(wú)效3如有時(shí)績(jī),須上評(píng)分中出,計(jì)入成績(jī)

目錄1題要2需分3總設(shè)4詳設(shè)5上操36總87致8參文2

1.題目要求模手通錄管系,實(shí)對(duì)機(jī)的通錄行管。能求如:()看功:擇此能,出下類擇辦類個(gè)類商類當(dāng)中類,顯出類所數(shù)中姓名電號(hào)碼電郵。()加功:錄入數(shù)。一結(jié)包:姓、話號(hào)、類辦公、人類商類電郵。例:當(dāng)入重的姓和話號(hào)時(shí)則示數(shù)錄重復(fù)取錄;當(dāng)信中超15條息,儲(chǔ)空已滿不再入新?lián)浫胄聯(lián)催f的序自進(jìn)條目號(hào)()改功:中某人名,可此的相數(shù)進(jìn)修改()除功:中某人姓時(shí),對(duì)人的應(yīng)據(jù)行刪,自調(diào)整續(xù)目的號(hào)2.需求分析根題要,由聯(lián)人信時(shí)放文件,以應(yīng)供件輸入輸?shù)炔伲怀讨幸绰?lián)人息,提顯、查功;要現(xiàn)改刪除系功能所應(yīng)供文的修和除操。3.總體設(shè)計(jì)以分整系統(tǒng)根上面需分,可這系統(tǒng)設(shè)分四大塊如圖

圖系統(tǒng)能塊圖4.詳細(xì)設(shè)計(jì)【細(xì)計(jì)1.主數(shù)[程序main()*******************主數(shù)********************{}2.主單主單數(shù)供用對(duì)統(tǒng)功的擇包括覽系人增聯(lián)人、改系人刪聯(lián)人該函的程圖圖所。程如。圖主單程圖[程序void******************菜函數(shù)*****************{

n=0,w1;do{puts("\t\t***********************菜***********************\n\n");puts("\t\t\t\t1.查看系"puts("\t\t\t\t2.增加系"puts("\t\t\t\t3.修改系信息"puts("\t\t\t\t4.刪除系"puts("\n\n\t\t***************************************************\n");printf("請(qǐng)選1-4):[]\b\b");scanf("%d",&n);{}else}while(w1==1);switch(n){case1:browse();break;*覽聯(lián)人塊case*增加系人塊*case3:modify();break;*改系模塊*case*除系模塊*}}3數(shù)據(jù)結(jié)構(gòu)計(jì)各系信包括姓、電號(hào)、系人型電子件可使用構(gòu)數(shù)組則名電、類和子郵作結(jié)體成。struct*系結(jié)體*{name[20];*系人名*tel[11];*系人話*type;*聯(lián)系類:為辦公;2為人;3為務(wù)*email[30];*聯(lián)系電郵件*}mem[N];*N為全局量表能夠存聯(lián)系數(shù)*4.瀏聯(lián)系人塊[需求分該塊功是使戶以瀏或分瀏覽聯(lián)人信。圖所示當(dāng)戶輸1、、,分顯辦公聯(lián)人個(gè)人聯(lián)人、務(wù)聯(lián)人和有系人

圖瀏聯(lián)人模流圖[程序void*********覽系函數(shù)**********{m,n=0,w1;do{******************詢系********************");puts("\t\t\t\t1.查詢公聯(lián)系"*查辦公聯(lián)人*puts("\t\t\t\t2.查詢?nèi)寺?lián)系"*查個(gè)人聯(lián)人*puts("\t\t\t\t3.查詢務(wù)聯(lián)系"*詢務(wù)聯(lián)系*puts("\t\t\t\t4.查詢有系人"*查所有系*puts("\t\t\t\t5.返回菜");*回單*printf("請(qǐng)鍵數(shù)1-5)選擇[]\b\b");scanf("%d",&n);{}else}while(w1==1);if(n==1){*示公類系*信息已示,任鍵返菜\n");

system("pause");*暫停統(tǒng)作*}else{printf_per(m);*顯個(gè)類聯(lián)人*信息已示,任鍵返菜\n");system("pause");*暫停統(tǒng)作*}else{printf_com(m);*顯示務(wù)聯(lián)系*信息已示,任鍵返菜\n");system("pause");*暫停統(tǒng)作*}else{printf_all(m);*顯示務(wù)聯(lián)人*信息已示,任鍵返菜\n");system("pause");*停統(tǒng)作*}else{}}5.增聯(lián)系人塊[求析]該塊功是使戶現(xiàn)增新系的功,鍵盤入聯(lián)人信并入到文中該模流圖如四示[程序void{*m為現(xiàn)聯(lián)人數(shù)*

*加聯(lián)人信,將系人量入m*{圖增聯(lián)人模流圖printf("儲(chǔ)存間足!\n");printf("按任鍵回菜system("pause");}else{輸聯(lián)人姓:");*輸聯(lián)系姓**聯(lián)人姓保至構(gòu)體*輸聯(lián)人電號(hào):");scanf("%s",mem[m].tel);do*選擇系類語(yǔ)句*{puts("\n\n\n\n\n:\n\n\n請(qǐng)選擇系類型");puts("1,辦公類t");puts("2,個(gè)人類t");puts("3.商務(wù)類t");請(qǐng)入字選聯(lián)人類:[]\b\b");scanf("%d",&n);if((n!=1)&&(n!=2)&&(n!=3)){}else}while(w1==1);

switch(n)*聯(lián)人類信存結(jié)構(gòu)中*{casecasecase}輸聯(lián)人電郵地:");}do{puts("定存?是否[if(t<1||t>2){}else}while(w2==1);if(t==1){{if(strcmp(mem[i].name,mem[m].name)==0){姓已在!能儲(chǔ),按意返回單");for(j=0;j<20;j++)for(j=0;j<11;j++)for(i=0;i<30;i++)mem[m].email[j]='\0';system("pause");}if(strcmp(mem[i].tel,mem[m].tel)==0){姓已在!能儲(chǔ),按意返回單");

for(j=0;j<20;j++)for(j=0;j<11;j++)for(i=0;i<30;i++)mem[m].email[j]='\0';system("pause");}}*存系信息文文檔*puts("息存儲(chǔ)puts("下所有:puts("按意鍵回單);system("pause");}if(t==2)*如用不保,將剛存結(jié)體中數(shù)刪除*{for(i=0;i<20;i++)for(i=0;i<11;i++)mem[m].tel[i]='\0';for(i=0;i<30;i++)puts("息儲(chǔ)失!puts(":以下是有息\n");printf_all(m);puts("按意鍵回單);system("pause");}}6.修改聯(lián)系人模塊[求析]

該塊功的功是示所聯(lián)人息。示后,戶入修改系的序,統(tǒng)據(jù)用輸?shù)男蝻@用選擇聯(lián)人,提用需要改部分息是名電話類還是子箱根據(jù)戶選擇改應(yīng)信息程void{puts("下所信息:\t");printf_all(m);*示有息,便戶認(rèn)所修的信*do{puts("輸您想改聯(lián)人數(shù)代,或0退出");scanf("%d",&n);{}else}while(w1==1);if(n==0)do{puts("\t\t\t\t1,姓名");puts("\t\t\t\t2.電話碼");puts("\t\t\t\t3.類型");puts("\t\t\t\t4.電子件");puts("\t\t\t\t0.退出");請(qǐng)入想修的型數(shù)代,按0退出:");if(t<0||t>4){}

else}while(w2==1);圖修聯(lián)人模流圖if(t==1)modify_name(n,m);*改姓函n為修的系編;m為總系人*if(t==2)*改話數(shù)為要修的聯(lián)人號(hào)m為聯(lián)人數(shù)*if(t==3)modify_type(n,m);*改型函,n為修的系編;m為總系人*if(t==4)*修函數(shù)n為要改聯(lián)人號(hào);為總系數(shù)*if(t==0)}7.刪除聯(lián)系人模塊[需求分該塊先示現(xiàn)所聯(lián)系,示成后用輸入刪的系人號(hào)刪除式將據(jù)結(jié)構(gòu)中除,后后的記向移。除后記錄存文件。[程序void{m,n,w1,w2,t,i;puts("下所信息:\t");

printf_all(m);do{puts("輸您想刪的系人字號(hào)]\b\b");scanf("%d",&n);{}else}while(w1==1);do*do語(yǔ)控制戶輸入使戶能輸或者2*{puts("確要?jiǎng)h此系:");您確定刪除?是

否");

圖刪聯(lián)人模if(t<1||t>2){}else}while(w2==1);if(t==2){puts("息保留請(qǐng)任鍵反菜\system("pause");}if(t==1){for(i=0;i<20;i++)mem[n-1].name[i]='\0';for(i=0;i<11;i++)mem[n-1].tel[i]='\0';for(i=0;i<30;i++)mem[n-1].email[i]='\0';move(n,m);puts("息刪除請(qǐng)任鍵反菜\system("pause");}}8.公共函數(shù)以為模中可用的一公函。(1)載聯(lián)人信函數(shù):intload()[說(shuō)明

該數(shù)于文件的據(jù)加至構(gòu)中,且以返現(xiàn)聯(lián)人的目[程序{FILEi,j;if((fp=fopen("E:\\vc以只讀式開(kāi)一二制件*{不能到息");}fread(&mem[i],sizeof(struct文中的據(jù)載結(jié)構(gòu)中*fclose(fp);*閉件*通過(guò)測(cè)系姓名為空判聯(lián)人數(shù)*return(j);*回有系人量*}(2)存所聯(lián)系函數(shù):voidsave(intm)[說(shuō)明該數(shù)參表示有構(gòu)體最一個(gè)素下。該數(shù)體如[程序voidm)表示有構(gòu)中最一元素下*{*,只有個(gè)素,進(jìn)save_1函數(shù)對(duì)件進(jìn)只操*else{*m>0時(shí)首進(jìn)save_1函新一個(gè)件,時(shí)的數(shù)保;然進(jìn)save_2函,到mem[m]的據(jù)追至件*save_2(m);}}該含個(gè)函數(shù)save_1()和m),結(jié)體只有個(gè)素即時(shí)只行一個(gè)數(shù)新建個(gè)件將數(shù)存文件;果構(gòu)體多一個(gè)素即時(shí),首執(zhí)第一函新一個(gè)件然后行二函數(shù)將構(gòu)體下大0的數(shù)存文件。[程序voidsave_1()

{FILEif((fp=fopen("E:\\vcprogrammes\\members.txt","wb"))==NULL){不能到息");}fclose(fp);}[程序voidm){i;FILEif((fp=fopen("E:\\vcprogrammes\\members.txt","ab"))==NULL){不能到息");}fwrite(&mem[i],sizeof(structmember),1,fp);fclose(fp);}(3)顯示所聯(lián)系函數(shù):voidprintf_all(intm)[說(shuō)明形m表現(xiàn)聯(lián)系的目用以制出聯(lián)人數(shù)。該數(shù)于出所的系人信。[程序void{i;以下所聯(lián)系:");printf("\n\nNO.電郵

姓名

電話號(hào)碼類型*判斷系人別輸出*{if(mem[i].type==1)printf("%2d

辦公類

if(mem[i].type==2)printf("%2d%-20s%-11s

個(gè)人

if(mem[i].type==3)printf("%2d%-20s

商務(wù)類

}}(4)示辦類聯(lián)人函數(shù):voidprintf_cle(intm)[說(shuō)明形m表現(xiàn)聯(lián)系數(shù)。以控循終點(diǎn)該數(shù)于輸所辦類聯(lián)人息。[程序voidprintf_cle(intm){i;公類系");郵

電號(hào)類型printf("\n\n姓名if(mem[i].type==1)*判聯(lián)系是屬辦公*

電%-11s

公類

%-30s\n",mem[i].name,mem[i].tel,mem[i].email);}(5顯示個(gè)類聯(lián)人函數(shù):voidprintf_per(intm)[說(shuō)明形m表現(xiàn)聯(lián)系數(shù)。以控循終點(diǎn)該數(shù)于輸所個(gè)聯(lián)系信。[程序voidm){i;個(gè)人類系:");郵

電號(hào)型printf("\n\n姓名if(mem[i].type==2)*斷聯(lián)人否屬個(gè)類*

電%-11s

個(gè)

人類

%-30s\n",mem[i].name,mem[i].tel,mem[i].email);}(6顯示商類聯(lián)人函數(shù):voidprintf_com(intm)[說(shuō)明

形m表現(xiàn)聯(lián)系數(shù)。以控循終點(diǎn)該數(shù)于輸所商類聯(lián)人息。[程序voidm){i;商務(wù)聯(lián)人:");郵

電號(hào)類型printf("\n\n姓名if(mem[i].type==3)*判聯(lián)人是屬商務(wù)*

電%-11s

務(wù)類

%-30s\n",mem[i].name,mem[i].tel,mem[i].email);}(7顯示某聯(lián)系函數(shù):printf_one(intm)[說(shuō)明形m表現(xiàn)聯(lián)系數(shù)。以控循終點(diǎn)該數(shù)于輸某指聯(lián)系信。[程序voidprintf_one(intm){姓名

電號(hào)型

電郵*個(gè)語(yǔ)句斷系人型*%-11s類%-30s\n",mem[m-1].name,mem[m-1].tel,mem[m-1].email);類%-30s\n",mem[m-1].name,mem[m-1].tel,mem[m-1].email);

辦公個(gè)商類

%-30s\n",mem[m-1].name,mem[m-1].tel,mem[m-1].email);}(8修改姓函數(shù)voidmodify_name(intm)[說(shuō)明該數(shù)于改聯(lián)人名。參n用輸入要改聯(lián)系序;m表示有系人數(shù)。[程序voidm){*于存用輸?shù)母暮舐?lián)人姓*

i,t,w1;puts("輸新名");scanf("%s",mod_name);do{puts("定存儲(chǔ)是2.否[if(t<1||t>2){}else}while(w1==1);if(t==1)*當(dāng)用輸入1,確修改,原存在構(gòu)中聯(lián)人姓刪除并將的系姓名到構(gòu)體*{for(i=0;i<20;i++)mem[n-1].name[i]='\0';save(m-1);puts("存功,任鍵續(xù)...");system("pause");modify();}if(t==2){for(i=0;i<20;i++)mod_name[i]='\0';puts("息儲(chǔ)失,任鍵繼system("pause");modify();}}(9)修電話函數(shù)n,int[說(shuō)明該數(shù)于改聯(lián)人話。參n用輸入要改聯(lián)系序;m表示有系人

數(shù)。[程序voidmodify_tel(intm){i,t,w1;puts("輸新話號(hào):");scanf("%s",mod_tel);do{puts("定存嗎?是2.[]\b\b");if(t<1||t>2){}else}while(w1==1);if(t==1){for(i=0;i<11;i++)mem[n-1].tel[i]='\0';strcpy(mem[n-1].tel,mod_tel);save(m-1);puts("存功!任鍵續(xù)...");system("pause");modify();}if(t==2){for(i=0;i<11;i++)puts("息儲(chǔ)失!任鍵繼system("pause");modify();}}

(10修改系人型函數(shù):voidmodify_type(intn,intm)[說(shuō)明該數(shù)于改聯(lián)人話。參n用輸入要改聯(lián)系序;m表示有系人數(shù)。[程序voidm){do*while語(yǔ)句制戶的入使用只輸—{puts("\t\t\t\t1,辦公");puts("\t\t\t\t2,個(gè)人");puts("\t\t\t\t3.商務(wù)");puts("\t\t\t\t請(qǐng)擇類[]\b\b");scanf("%d",&t1);if(t1<1||t1>3){}else}while(w1==1);do{puts("定存嗎?是2.]\b\b");scanf("%d",&t2);if(t2<1||t2>2){}else}while(w1==1);*用戶認(rèn)存時(shí),t2的值為修后數(shù)據(jù)存結(jié)構(gòu)中運(yùn)函后存文件*{mem[n-1].type=t1;save(m-1);

}()

puts("存功!任鍵續(xù)...");system("pause");modify();}*用確認(rèn)保時(shí),值為2,戶入修改息清*{t1=0;puts("息儲(chǔ)失!任鍵繼system("pause");modify();}修改email數(shù):modify_email(intn,intm)[說(shuō)明該數(shù)于改聯(lián)人話。參n用輸入要改聯(lián)系序;m表示有系人數(shù)。[程序voidm){i,t,w1;puts("輸新子郵地:");scanf("%s",mod_email);do{puts("定存嗎?是2.[]\b\b");if(t<1||t>2){}else}while(w1==1);if(t==1){for(i=0;i<30;i++)

mem[n-1].email[i]='\0';save(m-1);puts("存功!任鍵續(xù)...");system("pause");modify();}if(t==2){for(i=0;i<30;i++)mod_email[i]='\0';puts("息儲(chǔ)失!任鍵繼system("pause");modify();}}()移函數(shù)void[說(shuō)明形表示動(dòng)的點(diǎn)為動(dòng)的點(diǎn)該函用用將某聯(lián)人信刪后排在該系之的數(shù)向移動(dòng)[程序]voidmove(intm)*n是移的起;是移的終*{i,j;*采循賦值法將后的據(jù)前,將面的據(jù)除*{*將面的據(jù)給前*for(j=0;j<20;j++)*將面數(shù)據(jù)除準(zhǔn)下一的值*mem[i].name[j]='\0';strcpy(mem[i-1].tel,mem[i].tel);for(j=0;j<11;j++)mem

溫馨提示

  • 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)論