沈陽工程學(xué)院C語言設(shè)計報告_第1頁
沈陽工程學(xué)院C語言設(shè)計報告_第2頁
沈陽工程學(xué)院C語言設(shè)計報告_第3頁
沈陽工程學(xué)院C語言設(shè)計報告_第4頁
沈陽工程學(xué)院C語言設(shè)計報告_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本模板是課程設(shè)計報告模板,請各位同學(xué)認(rèn)真閱讀以下要求:本頁為設(shè)計報告要求頁,不必打印。(制作好報告后輸出時將本頁刪除)本模板的各種字體及頁面設(shè)置請同學(xué)們不要改動。本設(shè)計報告左側(cè)裝訂。在虛線處裝訂。在課程設(shè)計封皮一頁上用已經(jīng)設(shè)置好的宋體四號來填寫各個項目。在課程設(shè)計評定表一頁上用宋體小四填寫班級、學(xué)號、姓名、項目組、項目組長、項目組組員、本人工作簡介。組長評語一欄應(yīng)由組長來給出。在課程設(shè)計任務(wù)書一頁的開頭應(yīng)按照給定的設(shè)置(黑體三號)填寫好你的班級,在第五項時間安排里面應(yīng)用宋體五號加粗來填寫好日期范圍。從程序基本框架結(jié)構(gòu)圖開始到設(shè)計報告的最后一頁都要求有頁眉,內(nèi)容為你的課程設(shè)計題目,宋體小五居中。頁腳中的頁碼已經(jīng)設(shè)置好,同學(xué)們不必改動。在程序基本框架結(jié)構(gòu)圖采用WORD中的自選圖形繪制程序基本框架結(jié)構(gòu)圖,也就是程序流程圖。在程序設(shè)計說明書中應(yīng)該描述程序的設(shè)計思想,重點描述自己做的那部分的設(shè)計思想。字體用宋體小四。在代碼清單中打印程序已經(jīng)調(diào)試好的可運行的程序代碼。要求字體為宋體五號。(頁數(shù)可增加)報告的最后一部分是設(shè)計總結(jié),應(yīng)在程序代碼之后另起一頁,主要寫通過一周課程設(shè)計你自己的體會,包括你學(xué)到了什么,哪里遇到了困難解決的辦法以及今后的目標(biāo)。字體用宋體小四。報告的各個部分都可以不為規(guī)定的一頁,自己可增加頁數(shù),但要保證開始另外一項要另起一頁。13.服務(wù)課程名稱:本科添寫:C語言;/??铺韺懀河嬎銠C語言(c)14.報告完成后,要更新目錄。方法為:單擊目錄左側(cè),選定整個目錄后,按F9鍵更新目錄。15.紅色的字要刪除

┊┊┊┊課程設(shè)計服務(wù)課程名稱:計算機語言(C)系:自動控制工程系專業(yè):電氣自動化技術(shù)服務(wù)課程名稱:計算機語言(C)系:自動控制工程系專業(yè):電氣自動化技術(shù)班級:電自專111學(xué)號:2011338120姓名:崔永恒指導(dǎo)教師:宋丹茹、劉曉慧課程設(shè)計周次:第17周起始日期:2012.6.18至2012.6.24目錄TOC\h\z\t"標(biāo)題2,1"C語言課程設(shè)計成績評定表 1C語言課程設(shè)計任務(wù)書 2程序設(shè)計思路 3程序基本框架結(jié)構(gòu)圖 5系統(tǒng)運行界面截圖 6源代碼清單 8課程設(shè)計總結(jié) 15C語言課程設(shè)計-PAGE3-┊┊C語言課程設(shè)計成績評定表┊┊班級電自專111學(xué)號2011338120姓名崔永恒項目組第3組項目組長崔永恒項目組組員初宇、陸海洋、李鑫、馬文權(quán)本人工作簡介:在課程設(shè)計中,我主要負(fù)責(zé)整個程序的編輯,重點負(fù)責(zé)的是插入信息和顯示所有記錄功能模塊的設(shè)計。除此之外,我還協(xié)助其他組員完成代碼的調(diào)試。組長評語:對于本次實訓(xùn),我順利的完成了自己負(fù)責(zé)的功能模塊,并協(xié)助其他組員進行了程序調(diào)試、運行及實訓(xùn)報告的制作。雖然,我在C語言的掌握上還存在不足,但我對自己的總體表現(xiàn)比較滿意。成績評定標(biāo)準(zhǔn)ABCDE理論基礎(chǔ)很好好比較好一般不好報告完成情況很好好比較好一般不好紀(jì)律表現(xiàn)很好好比較好一般不好程序創(chuàng)意很好好比較好一般不好所選模塊完成情況很好好一般較差不好所選算法難易程度復(fù)雜比較復(fù)雜一般簡單很簡單程序可操作性很好好一般較差不好答辯表現(xiàn)很好好一般較差不好最后成績優(yōu)秀A>=5B<=3C<=0D=0E=0良好A>=3B<=4C<=1D=0E=0中等A>=1B>=2C>=4D<=1E=0及格A=0B=0C<=4D>=4不及格A=0B=0C=0D<=4E>=4負(fù)責(zé)指導(dǎo)教師:(簽名)指導(dǎo)教師:(簽名)

C語言課程設(shè)計任務(wù)書一、設(shè)計目的通過本次課程設(shè)計使學(xué)生進一步加深對C語言課程內(nèi)容的理解,初步掌握一般應(yīng)用程序的開發(fā)方法和步驟,進一步了解與掌握C語言的編程方法和技巧,提高學(xué)生用C語言解決實際問題的能力。二、設(shè)計要求1、認(rèn)真查閱參考書、資料 2、遵守課程設(shè)計時間安排3、按時上機,認(rèn)真調(diào)試程序 4、認(rèn)真完成課程設(shè)計報告三、課設(shè)報告裝訂內(nèi)容及順序1、課程設(shè)計封皮 2、目錄3、課程設(shè)計成績評定表 4、課程設(shè)計任務(wù)書5、程序基本框架圖6、程序設(shè)計說明書7、源代碼清單 8、課設(shè)總結(jié)與心得四、設(shè)計題目_________________通訊錄管理系統(tǒng)____________________五、時間安排(一周:從6月18日到6月24日)1、查閱資料及程序設(shè)計(1天) 2、程序編制及調(diào)試(3天)3、成績評定(0.5天) 3、打印報告(0.5天)六、參考文獻1、《C語言程序設(shè)計》李淑華/李貞編大連理工大學(xué)出版社2、《C語言程序設(shè)計》孫連科/姚大鵬編遼海出版社3、《C++時尚編程百例》網(wǎng)冠科技編.機械工業(yè)出版社4、《TURBOC實用大全》徐金梧等編.機械工業(yè)出版社通訊錄管理系統(tǒng)

程序設(shè)計思路一、程序功能:1、完成通訊錄信息的管理,包括創(chuàng)建通訊錄,插入信息,查詢記錄,修改記錄,刪除記錄,顯示所有記錄,退出通訊錄。2、能夠根據(jù)聯(lián)系人的信息單獨或分類查詢。二、設(shè)計思路為了實現(xiàn)通訊錄管理系統(tǒng)的功能,我們組選用了動態(tài)鏈表。因為動態(tài)鏈表,這種數(shù)據(jù)結(jié)構(gòu)非常靈活,結(jié)點數(shù)目無需事先指定,可以臨時生成。每個結(jié)點有自己的存儲空間,用來存放該結(jié)點的數(shù)據(jù),結(jié)點間的存儲空間也無需連續(xù),結(jié)點之間的串聯(lián)由指針來完成,指針的操作又極為靈活方便。根據(jù)功能可以分為如下幾個功能模塊;1、通訊錄初始化模塊:通過函數(shù)打開指定文件,并用函數(shù)將文件內(nèi)的數(shù)據(jù)讀入結(jié)構(gòu)體數(shù)組中,這兩個標(biāo)準(zhǔn)庫函數(shù)都定義在stdio.h頭文件中。對整個函數(shù)的返回值進行定義,用來并表示導(dǎo)入的數(shù)據(jù)成員個數(shù),而后將該值賦給全局變量用來計數(shù)。所涉及的的變量有姓名、性別、電話、所在城市、郵編、,對其進行定義。2、保存文件函數(shù):通過將文件名字符串作為參數(shù)傳入,用函數(shù)將當(dāng)前結(jié)構(gòu)體數(shù)組中的全部數(shù)據(jù)寫入文件中并關(guān)閉文件。該函數(shù)無返回值。3、創(chuàng)建通訊錄函數(shù):該函數(shù)沒有參數(shù),通過提示用戶輸入數(shù)據(jù);當(dāng)輸入的姓名或電話號碼重復(fù)時,提示用戶重復(fù)并重新輸入;被錄入一個完整的新數(shù)據(jù)后讓全局變量自增,并將其作為函數(shù)的返回值返回。4、插入信息函數(shù):將用戶要插入的成員姓名作為參數(shù)傳入,通過提示用戶輸入數(shù)據(jù),依次輸入要插入的數(shù)據(jù)。再用函數(shù)將當(dāng)前結(jié)構(gòu)體數(shù)組中的完善后的數(shù)據(jù)寫入文件中并關(guān)閉文件。5、查詢記錄函數(shù):將用戶要找的成員姓名作為參數(shù)傳入,遍歷所有結(jié)構(gòu)體并找出符合的輸出,若輸出成功則可以繼續(xù)查找,用戶所輸姓名不存在則輸出用戶名不存在。6、修改記錄函數(shù):將用戶要修改的成員姓名作為參數(shù)傳入,遍歷所有結(jié)構(gòu)體并找出符合的,依次提示修改項目,由用戶輸入新數(shù)據(jù)并保存,返回值同查找記錄函數(shù)。7、刪除記錄函數(shù):將用戶要刪除的成員姓名作為參數(shù)傳入,遍歷所有結(jié)構(gòu)體并找出符合的刪除,并將后面的所有數(shù)據(jù)向前移動一個位置,返回值同查找記錄函數(shù)。8、顯示所有記錄函數(shù):無參數(shù)傳入,無返回值,用戶根據(jù)提示輸入指令,在程序中找出所需信息。該函數(shù)沒有返回值。9、主函數(shù):判斷用戶輸入的指令,轉(zhuǎn)向具體的函數(shù)來執(zhí)行,并根據(jù)函數(shù)的返回值判斷執(zhí)行結(jié)果并予以提示。主函數(shù)中用特定語句結(jié)束程序,并在結(jié)束前提示用戶保存數(shù)據(jù)。10、我負(fù)責(zé)模塊是插入信息和顯示所有記錄,具體設(shè)計思路如下:a.插入信息模塊:首先,對要插入的信息進行定義。然后,輸入用戶所要插入的數(shù)據(jù),結(jié)束后,進行保存。這種插入是隨機的,可以出現(xiàn)在任意部分。b.顯示所有記錄模塊:定義某一變量,當(dāng)輸入該變量后,可以顯示出通訊錄中的所有已存儲的信息。程序基本框架結(jié)構(gòu)圖通訊錄通訊錄管理系統(tǒng)管理系統(tǒng)創(chuàng)建通訊錄顯示所有記錄刪除記錄修改記錄退出系統(tǒng)查詢記錄創(chuàng)建通訊錄顯示所有記錄刪除記錄修改記錄退出系統(tǒng)查詢記錄插入信息返返回按姓名查詢

系統(tǒng)運行界面截圖

源代碼清單#include<stdio.h>#include<string.h>#include<stdlib.h>typedefstructTelephone{charname[50];charsex[30];chartel[30];charcity[30];chareip[30];structTelephone*next;}TEL;TEL*head;voidInitiate();voidMenu();voidCreate();voidAdd();voidFind();voidAlter();voidDelete();voidList();intmain(){intchoice;charyes_no;Initiate();do{system("cls");Menu();printf("請選擇0-6的數(shù)字\n");scanf("%d",&choice);printf("\n");switch(choice){case1:Create();break;case2:Add();break;case3:Find();break;case4:Alter();break;case5:Delete();break;case6:List();break;case0:printf("************感謝您的使用************\n");exit(0);break;default:printf("輸入有誤!請重新輸入\n");break;}printf("是否繼續(xù)YorN?\n");do{scanf("%c",&yes_no);}while(yes_no!='Y'&&yes_no!='y'&&yes_no!='N'&&yes_no!='n');}while(yes_no=='Y'||yes_no=='y');}voidInitiate(){if((head=(TEL*)malloc(sizeof(TEL)))==NULL)exit(1);head->next=NULL;}voidMenu(){printf("**************歡迎使用通訊錄系統(tǒng)**************");printf("\n");printf("\n");printf("1.創(chuàng)建通訊錄。\n");printf("2.插入信息。\n");printf("3.查詢記錄\n");printf("4.修改記錄\n");printf("5.刪除記錄!\n");printf("6.顯示所有記錄\n");printf("0.退出通訊錄\n");printf("請輸入0~6\n");}voidCreate(){TEL*p1[100],*p2;intm,i;printf("請輸入創(chuàng)建個數(shù):");scanf("%d",&m);for(i=1;i<=m;i++){p1[i]=(TEL*)malloc(sizeof(TEL));printf("請輸入第%d條信息!\n",i);printf("姓名:\n");scanf("%s",&p1[i]->name);printf("性別:\n");scanf("%s",&p1[i]->sex);printf("電話:\n");scanf("%s",&p1[i]->tel);printf("城市:\n");scanf("%s",&p1[i]->city);printf("郵編:\n");scanf("%s",&p1[i]->eip);p1[i]->next=NULL;if(head->next==NULL)head->next=p1[i];else{for(p2=head;p2->next!=NULL;p2=p2->next);p2->next=p1[i];}}printf("信息已添加!\n");return;}voidAdd(){TEL*p,*q;if((q=(TEL*)malloc(sizeof(TEL)))==NULL)exit(1);printf("請輸入要添加的信息!\n");printf("姓名:\n");scanf("%s",&q->name);printf("性別:\n");scanf("%s",q->sex);printf("電話:\n");scanf("%s",q->tel);printf("城市:\n");scanf("%s",q->city);printf("郵編:\n");scanf("%s",q->eip);for(p=head;p->next!=NULL;p=p->next);p->next=q;q->next=NULL;printf("此信息已添加!");return;}voidFind(){TEL*p;charname[50];if(head->next==NULL){printf("此通訊錄為空!\n");return;}printf("請輸入要查找的姓名:\n");scanf("%s",&name);for(p=head->next;p!=NULL;p=p->next){if(strcmp(p->name,name)==0){printf("姓名\t性別\t城市\(zhòng)t郵編\t電話\n");printf("%s\t%s\t%s\t%s\t%s\n",p->name,p->sex,p->city,p->eip,p->tel);}elseif(p->next==NULL)printf("無此信息!\n");}}voidAlter(){charname[50];TEL*p,*p1;if(head->next==NULL){printf("此通訊錄為空!\n");return;}printf("請輸入要修改的姓名:\n");scanf("%s",name);for(p=head->next;p!=NULL;p=p->next){if(strcmp(p->name,name)==0)break;elseif(p->next==NULL){printf("無此信息!\n");return;}}p1=(TEL*)malloc(sizeof(TEL));printf("姓名:\n");scanf("%s",p1->name);strcpy(p->name,p1->name);printf("性別:\n");scanf("%s",p1->sex);strcpy(p->sex,p1->sex);printf("電話:\n");scanf("%s",p1->tel);strcpy(p->tel,p1->tel);printf("城市:\n");scanf("%s",p1->city);strcpy(p->city,p1->city);printf("郵編:\n");scanf("%s",p1->eip);strcpy(p->eip,p1->eip);printf("此信息已修改!\n");printf("姓名\t性別\t城市\(zhòng)t郵編\t電話\n");printf("%s\t%s\t%s\t%s\t%s\n",p->name,p->sex,p->city,p->eip,p->tel);free(p1);}voidDelete(){charname[50];TEL*p=head->next,*p1=head->next,*p2;if(head->next==NULL){printf("此通訊錄為空!\n");return;}printf("請輸入要刪除的姓名:\n");scanf("%s",name);while((strcmp(p->name,name)!=0)&&p->next!=NULL){p1=p;p=p->next;}if(strcmp(name,p->name)==0){if(p==head->next&&p->next!=NULL)head->next=p->next;elseif(p==head->next&&p->next==NULL){head->next=p->next;printf("信息已刪除,先此通訊錄為空?。n");return;}elsep1->next=p->next;}else{printf("此信息不存在?。?!\n");return;}printf("此信息已刪除!");printf("姓名\t性別\t城市\(zhòng)t郵編\t電話\n");for(p2=head->next;p2!=NULL;p2=p2->next)printf("%s\t%s\t%s\t%s\t%s\n",p2->name,p2->sex,p2->city,p2->eip,p2->tel);}voidList(){TEL*p;if(head->next=

溫馨提示

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

評論

0/150

提交評論