版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、xxxxxxx高級(jí)語言課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告系 別:xxxxxxxx專業(yè)班級(jí):xxxxxxxxx學(xué) 號(hào):xxxxxxxxxxx班內(nèi)序號(hào):xx姓 名:xxxx指導(dǎo)老師:xxxxxxxxx 實(shí)驗(yàn)課題:學(xué)生通訊信息管理系統(tǒng)實(shí)驗(yàn)時(shí)間:2008.6.102008.6.202008年6月17日一、實(shí)驗(yàn)?zāi)康?. 熟悉c語言的編譯,鏈接和運(yùn)行過程;2. 掌握c語言的數(shù)據(jù)類型,熟悉整型、實(shí)型、字符型變量的定義方式及如何給它們賦值,掌握不同的類型數(shù)據(jù)之間的賦值規(guī)律,賦值使用方法;3. 掌握if語句及switch語句的運(yùn)用方法及嵌套應(yīng)用方法;4. 掌握實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的三種語句while、 do-while.、for 的使用
2、;5. 掌握c語言函數(shù)的定義,聲名及調(diào)用方法和調(diào)用過程;6. 掌握c語言主函數(shù)和被調(diào)用函數(shù)之間的參數(shù)傳遞方式,學(xué)會(huì)函數(shù)的嵌套調(diào)用和遞歸調(diào)用的過程和方法;7. 掌握數(shù)組的定義,賦值引用及輸入輸出方法,并正確用字符數(shù)組儲(chǔ)存字符串,學(xué)會(huì)字符串的使用;8. 掌握結(jié)構(gòu)體類型變量的定義和使用;9. 掌握指針變量和指向指針的指針變量的定義及使用,進(jìn)一步了解指向結(jié)構(gòu)體數(shù)組的指針變量的概念及使用方法;10. 掌握鏈表的概念及鏈表的操作,并理解鏈表與數(shù)組的不同點(diǎn)及優(yōu)缺點(diǎn);11. 掌握文件和文件指針的定義及文件建立,打開,關(guān)閉,讀寫等的操作方法12. 能夠采用模塊化思想調(diào)試程序;二實(shí)驗(yàn)內(nèi)容1. 編寫程序并進(jìn)行調(diào)試運(yùn)
3、行;2. 輸入學(xué)生通訊信息并保存于文件,每個(gè)學(xué)生包含信息如:序號(hào),姓名,省份,電話,生日,郵編,大學(xué),班級(jí),qq號(hào)信息;3. 對(duì)已存入的學(xué)生信息進(jìn)行更新操作,包括添加一個(gè)學(xué)生信息、刪除某個(gè)學(xué)生信息和修改某個(gè)學(xué)生信息;4. 通過輸入姓名,學(xué)號(hào)的方式查詢學(xué)生信息;5. 可以通過省份,生日來統(tǒng)計(jì)通訊信息;6. 最后輸出學(xué)生信息,供需要時(shí)打印。 一、 需求分析1. 該程序可用于對(duì)學(xué)生的通訊方式基本信息的存儲(chǔ)、更新、查詢、輸出等操作,以實(shí)現(xiàn)對(duì)學(xué)生通訊錄信息的管理,便于同學(xué)之間的聯(lián)系交往;2. 其中更新功能包括:添加信息,刪除信息,修改信息,可根據(jù)需要添加一個(gè)或多個(gè)學(xué)生信息,也可針對(duì)個(gè)別學(xué)生信息進(jìn)行適當(dāng)?shù)?/p>
4、刪除或修改,以便隨時(shí)更新學(xué)生通訊信息。3. 程序中設(shè)計(jì)的查詢功能可根據(jù)需要從若干數(shù)據(jù)中查詢某個(gè)學(xué)生信息,并且可根據(jù)兩種不同的方法查詢:按姓名查詢和按電話查詢,以滿足不同的需要;4. 可以通過輸出的方式查看整個(gè)通訊錄;5. 可以通過排序的方式查看同學(xué)生日的先后。四、概要設(shè)計(jì)1、方案設(shè)計(jì)對(duì)系統(tǒng)進(jìn)行分析,給出結(jié)構(gòu)圖 分析:系統(tǒng)要實(shí)現(xiàn)許多功能,因此遵循結(jié)構(gòu)化程序設(shè)計(jì)思想來進(jìn)行本系統(tǒng)的設(shè)計(jì):,自頂向下逐步細(xì)化,將系統(tǒng)設(shè)計(jì)任務(wù)分解出許多子功能模塊來計(jì);結(jié)構(gòu)圖如下:學(xué)生通訊錄信息管理系統(tǒng) 選 擇 模 塊退出系統(tǒng)退出模塊統(tǒng)計(jì)模塊查詢模塊 更新模塊 輸出模塊輸入模塊排序模塊添加模塊 刪除模塊修改模塊按姓名按電話
5、退出模塊按省份按生日退出模塊保 存 通 訊 信 息2 . 模塊功能說明對(duì)各個(gè)模塊進(jìn)行功能的描述(1).輸入模塊:錄入需要管理的通訊信息并將信息保存于文件中,以方便日后進(jìn)行打印、讀取、更新等操作。(2).添加模塊:可添加一個(gè)或多個(gè)學(xué)生的通訊信息,并將所添加的信息保存,方便查找。(3).刪除模塊:可對(duì)失去聯(lián)系的學(xué)生通訊信息做刪除處理。(4).修改模塊:可對(duì)通訊信息發(fā)生改變的學(xué)生信息進(jìn)行修改。(5).查詢模塊:可對(duì)已建立的學(xué)生通訊信息進(jìn)行查詢,并且可根據(jù)需要選擇按姓名查詢或按電話查詢。(6).保存模塊:用于對(duì)通訊信息進(jìn)行保存。(7).輸出模塊:將所有學(xué)生通訊信息或想要查詢的學(xué)生信息顯示于屏幕,用于打
6、印學(xué)生通訊信息或查找某些學(xué)生通訊信息。(8).退出系統(tǒng):選擇該項(xiàng),自動(dòng)退出該系統(tǒng)。五、詳細(xì)設(shè)計(jì)及運(yùn)行結(jié)果流程圖, 函數(shù)之間相互調(diào)用的圖示 ,程序設(shè)計(jì)及編碼, 運(yùn)行結(jié)果。開 始輸 入 變 量 i判斷i的值統(tǒng)計(jì)模塊查詢模塊 更新模塊 輸出模塊輸入模塊退出模塊添加模塊 刪除模塊修改模塊按姓名按電話退出模塊按省份按生日退出模塊排序模塊判斷i值輸入變量退出模塊輸入變量判斷i值輸入變量判斷i值保 存 模 塊結(jié) 束 輸入模塊: 輸入模塊:開 始 開 始 i=0i=0i<sumi<sum輸入通訊信息輸入通訊信息i+i+m=y si.num!=0結(jié) 束sum=i結(jié) 束開始開始 排序模塊: 更新模塊:
7、輸入i的值i=0j=i+1判斷i的值i的年齡大于j的年齡 否 退出系統(tǒng)刪除模塊修改模塊添加模塊 是 i=1 i=2 i=3 交換i與j的信息 j=j+1j<sum 是 否返回主界面i=i+1 i<sum-1結(jié)束 是 否輸出信息 結(jié)束輸入i開始省份統(tǒng)計(jì)退出系統(tǒng)判斷i值輸入i開始退出系統(tǒng)判斷i值查詢模塊: 統(tǒng)計(jì)模塊:返回主界面結(jié)束姓名查詢電話查詢生日統(tǒng)計(jì)返回主界面結(jié)束六 調(diào)試情況及運(yùn)行結(jié)果1.對(duì)自己設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案。此次實(shí)踐課編寫的是一個(gè)應(yīng)用程序,相對(duì)于以前我們見到的程序,它要大得多,運(yùn)行的結(jié)果也沒有預(yù)想中的好,數(shù)據(jù)的輸出格式不太規(guī)范,而且各模塊也出現(xiàn)了
8、一些小問題,在同學(xué)們的幫助下,我很有耐心的一次又一次的進(jìn)行修改,最后運(yùn)行的結(jié)果基本上達(dá)到了預(yù)期的目的??芍吘故堑谝淮为?dú)立完成這樣的大程序,結(jié)果還不是太理想。由于時(shí)間很短,在選題報(bào)告中設(shè)想到的好多功能都沒有實(shí)現(xiàn)。已有的那些功能雖已能基本上滿足用戶的需要,但如果還有更多的功能程序就會(huì)更加完美。如:再錄入數(shù)據(jù)時(shí),沒有設(shè)計(jì)數(shù)據(jù)輸入出錯(cuò)的提示。2.在設(shè)計(jì)過程中的感受。 本次c 語言的實(shí)習(xí)課讓我對(duì)c 語言的學(xué)習(xí)又有了更深入的了解,也讓我更深刻地領(lǐng)悟到了“實(shí)踐出真理”這個(gè)道理,在上機(jī)實(shí)踐過程中學(xué)到的知識(shí)遠(yuǎn)遠(yuǎn)超過了在課堂上十幾周學(xué)到的,學(xué)校組織的這次實(shí)習(xí)讓我們這些實(shí)踐知識(shí)匱乏的大學(xué)生增添了許多社會(huì)經(jīng)驗(yàn),為我
9、們將來走上工作崗位其了不小的鋪墊作用。本次實(shí)習(xí)中遇到了很多以前沒有遇到過的問題,也曾想過要放棄,但看到那些同學(xué)都在那認(rèn)真的寫程序,給了我繼續(xù)的信心。在同學(xué)的幫助下,我順利的結(jié)束了本次實(shí)習(xí),讓我知道原來憑借自己努力取得的成功會(huì)讓自己這么欣慰,也讓我知道了友誼和團(tuán)結(jié)的重要性。并且,通過一種題材兩中方式的學(xué)習(xí),我掌握了更多的知識(shí),也認(rèn)識(shí)到對(duì)比學(xué)習(xí)的重要性。七參考文獻(xiàn)參考書名 編者姓名 出版社 出版時(shí)間c語言程序設(shè)計(jì) 王曙燕 曹錳 科學(xué)出版社 2005年2月c語言程序設(shè)計(jì) 譚浩強(qiáng) 清華大學(xué)出版社 1999年12月 參考書名 編者姓名 出版社 出版時(shí)間c語言程序設(shè)計(jì) 王曙燕 曹錳 科學(xué)出版社 2005年
10、2月八。附錄:1. 鏈表方式: #include<stdio.h>#include<string.h>#define n sizeof(struct stud)#include <math.h>#include <conio.h>#include <stdlib.h> /*日期結(jié)構(gòu)體類型*/ struct date int y; int m; int d; bir; /*學(xué)生信息結(jié)構(gòu)體類型*/ struct stud int num; /*序號(hào)*/ char name20; /*姓名*/ char tel40; /*電話*/ char
11、 addr40; /*省份*/ char yb20; /*郵編*/ char daxue50; /*大學(xué)*/ struct date bir; /*生日*/ struct stud *next; ; char a; struct stud *h; file *fp;/*建立鏈表*/struct stud *creat() int i,k; struct stud *p1,*p2,*head; printf("n請(qǐng)輸入學(xué)生數(shù):n"); scanf("%d",&k); head=null; head=p1=p2=(struct stud *)mall
12、oc(n); /*head,p1,p2指向首結(jié)點(diǎn)*/ for(i=0;i<k;i+) p1=(struct stud *)malloc(n); /*p1指向新申請(qǐng)的結(jié)點(diǎn)*/ printf("n請(qǐng)輸入序號(hào):"); scanf("%d",&p1->num); printf("n請(qǐng)輸入姓名:"); scanf("%s",p1->name); printf("n請(qǐng)輸入電話:"); scanf("%s",p1->tel); printf("n請(qǐng)
13、輸入籍貫:"); scanf("%s",p1->addr); printf("n請(qǐng)輸入郵編:"); scanf("%s",p1->yb); printf("n請(qǐng)輸入大學(xué):"); scanf("%s",p1->daxue); printf("n請(qǐng)輸入出生日期:(年-月-日)"); scanf("%d-%d-%d",&p1->bir.y,&p1->bir.m,&p1->bir.d); p2-
14、>next=p1; /*將新結(jié)點(diǎn)鏈接到表尾*/ p2=p1; /*p2指向新的表尾*/ p2->next=null; head=head->next; /*頭指針后移*/ save_message(head); /*立即保存*/ return head;/*輸入模塊*/input_message()clrscr(); printf("nn*輸入學(xué)生信息*n"); printf("-n"); h=creat(); bioskey(0); printf("輸入完畢,按任意鍵返回主菜單!"); bioskey(0);/*輸
15、出模塊*/output_message(struct stud *p)clrscr(); if(p=null) printf("暫無信息!請(qǐng)回主菜單錄入信息!n"); else printf("nn=通訊錄信息表=nn"); printf("姓名=省份=電話=生日(年-月-日)=郵編=大學(xué)n"); while(p!=null) printf("-n"); printf("%s %s %s %d-%d-%d %s %sn",p->name,p->addr,p->tel,p->
16、;bir.y,p->bir.m,p->bir.d,p->yb,p->daxue); printf("-n"); printf("n"); p=p->next; printf("n"); printf("按任意鍵返回主菜單!nn"); bioskey(0);/*保存學(xué)生信息*/save_message(struct stud *h)file *fp; struct stud *f; f=h; /*保證指針位置*/ if(fp=fopen("zhuyan.txt",&q
17、uot;wb")=null) printf("不能打開文件!n"); return; while(h!=null) if(fwrite(h,sizeof(struct stud),1,fp)!=1) /*向文件寫入數(shù)據(jù)*/ printf("文件寫入錯(cuò)誤!"); return; h=h->next; h=f; /*保證指針位置*/ printf("已存盤,按任意鍵回上層菜單:n"); getch(); fclose(fp); return;/*讀取信息*/read_message()file *fp; if(fp=fop
18、en("zhuyan.txt","rb")=null) printf("nn*暫時(shí)還沒有該生信息,請(qǐng)按任意鍵返回上一級(jí)菜單.n"); return; do if(fread(h,sizeof(struct stud),1,fp)!=1) if(feof(fp) printf("已到文件末尾.n"); /*已到文件末尾.*/ else printf("文件讀取錯(cuò)誤!n"); /*文件讀取錯(cuò)誤.*/ return; h=h->next; while(h!=null); fclose(fp);
19、getch(); bioskey(0);/*添加學(xué)生信息*/add_message(struct stud *w) struct stud *p,*q; p=(struct stud*)malloc(n); /*p指向新申請(qǐng)的結(jié)點(diǎn)*/ clrscr(); printf("n請(qǐng)輸入學(xué)生序號(hào):"); scanf("%d",&p->num); printf("n請(qǐng)輸入學(xué)生姓名:"); scanf("%s",p->name); printf("n請(qǐng)輸入學(xué)生電話:"); scanf(&
20、quot;%s",p->tel); printf("n請(qǐng)輸入學(xué)生籍貫:"); scanf("%s",p->addr); printf("n請(qǐng)輸入學(xué)生郵編:"); scanf("%s",p->yb); printf("n請(qǐng)輸入學(xué)生大學(xué):"); scanf("%s",p->daxue); printf("n請(qǐng)輸入學(xué)生出生日期:"); scanf("%d-%d-%d",&p->bir.y,&am
21、p;p->bir.m,&p->bir.d); p->next=null; if(w=null) w=p; /*頭指針為空,p作為新頭指針*/ return 1; /*正確插入返回1*/ q=w; /*從頭指針開始*/ if(q->num)>(p->num) /*找到插入位置在首結(jié)點(diǎn)之前*/ p->next=w; /*將首結(jié)點(diǎn)鏈接在新結(jié)點(diǎn)之后*/ w=p; /*p作為新的頭指針*/ return 1; while(q->next)!=null && (q->next->num)<(p->num) q=
22、q->next; /*繼續(xù)查找插入位置*/ if(q->next=null) /*插入位置在尾結(jié)點(diǎn)之后*/ q->next=p; /*新結(jié)點(diǎn)鏈接到尾結(jié)點(diǎn)之后*/ return 1; else if(q->next->num)=(p->num) /*找到重號(hào)*/ free(p); /*釋放新結(jié)點(diǎn)的存儲(chǔ)空間*/ return 0; /*不插入返回0*/ p->next=q->next; /*后續(xù)結(jié)點(diǎn)鏈接到新結(jié)點(diǎn)之后*/ q->next=p; /*新結(jié)點(diǎn)鏈接到前驅(qū)結(jié)點(diǎn)之后*/ return 1;/*刪除模塊*/del_message(struct
23、 stud *w)char name20; struct stud *p,*q; if(w=null) return 0; /*w就是頭指針,空表不能刪除返回0*/ clrscr(); printf("請(qǐng)輸入要?jiǎng)h除的學(xué)生姓名:n"); scanf("%s",name); q=w; if(strcmp(q->name,name)=0) /*找到要?jiǎng)h除的是第一個(gè)結(jié)點(diǎn)*/ w=q->next; /*修改頭指針*/ free(q); /*釋放存儲(chǔ)空間*/ return 1; /*正確刪除返回1*/ p=q->next; while(p!=nul
24、l) if(strcmp(p->name,name)=0) /*找到要?jiǎng)h除的結(jié)點(diǎn)*/ q->next=p->next; /*后續(xù)結(jié)點(diǎn)連接到前驅(qū)結(jié)點(diǎn)之后*/ free(p); /*釋放存儲(chǔ)空間*/ return 1; q=p; /*推移指針繼續(xù)查找*/ p=p->next; return 0; /*未找到要?jiǎng)h除的結(jié)點(diǎn)返回0*/*修改模塊*/revise_message(struct stud *g) int choice; char name20,n,m; do clrscr(); printf("n *學(xué)生學(xué)籍信息* n"); printf(&quo
25、t; 輸入要修改的學(xué)生姓名:n"); scanf("%s",name); while(g!=null) while(strcmp(g->name,name)!=0) g=g->next; if(g=null) printf("n 該學(xué)生不存在!"); bioskey(0); else do printf("n 您要修改哪一項(xiàng)?n"); printf("n 1序號(hào)n"); printf("n 2姓名n"); printf("n 3籍貫n"); printf
26、("n 4電話n"); printf("n 5大學(xué)n"); printf("n 6出生日期n"); scanf("%d",&choice); switch(choice) case 1:printf("n 請(qǐng)輸入修改后的序號(hào):"); scanf("%d",&g->num);break; case 2:printf("n 請(qǐng)輸入修改后的姓名:"); scanf("%s",g->name);break; case
27、 3:printf("n 請(qǐng)輸入修改后的籍貫:"); scanf("%s",g->addr); break; case 4:printf("n 請(qǐng)輸入修改后的電話:"); scanf("%s",g->tel); break; case 5:printf("n 請(qǐng)輸入修改后的大學(xué):"); scanf("%s",g->daxue); break; case 6:printf("n 請(qǐng)輸入修改后的出生日期:"); scanf("%d-
28、%d-%d",&g->bir.y,&g->bir.m,&g->bir.d);break; printf("n是否繼續(xù)修改此人信息?y/nn") ; getchar(); m=getchar(); while(m='y'); printf("nn=通訊錄信息表=nn"); printf("姓名=省份=電話=生日(年-月-日)=郵編=大學(xué)n"); printf("-n"); printf("%s %s %s %d-%d-%d %s %sn&q
29、uot;,g->name,g->addr,g->tel,g->bir.y,g->bir.m,g->bir.d,g->yb,g->daxue); printf("-n"); printf("n"); getch(); break; printf("n要繼續(xù)嗎?(y/n)n"); getchar(); n=getchar(); while(n='y'); printf("n 按任意鍵返回主菜單!"); bioskey(0); /*更新模塊*/ renew_
30、message() int choice=100; while(choice!=0) printf("n*更新同學(xué)信息*nn"); printf(" 1.添加同學(xué)信息nn"); printf(" 2.刪除同學(xué)信息nn"); printf(" 3.修改同學(xué)信息nn"); printf(" 0.返回修改菜單nn"); printf(" 請(qǐng)選擇(03):n"); printf("*nn"); scanf("%d",&choice);
31、switch(choice) case 1:add_message(h);break; case 2:del_message(h);break; case 3:revise_message(h);break; case 0:break; default:printf("輸入有誤!n"); /*按姓名查詢*/inquire_name( struct stud *p) char name20; struct stud *f; f=p; clrscr(); printf("nn 請(qǐng)輸入要查找的姓名:"); scanf("%s",&n
32、ame); if(p=null) printf("n您要查找的學(xué)生暫時(shí)不存在,請(qǐng)按任意鍵返回n"); bioskey(0); else if (strcmp(p->name,name)!=0|p->name=null) p=p->next; clrscr(); printf("nn該生有關(guān)信息為:nnnn"); printf("nn=通訊錄信息表=nn"); printf("姓名=省份=電話=生日(年-月-日)=郵編=大學(xué)n"); printf("-n"); printf(&q
33、uot;%s %s %s %d-%d-%d %s %sn",p->name,p->addr,p->tel,p->bir.y,p->bir.m,p->bir.d,p->yb,p->daxue); printf("-n"); printf("n"); p=f; getch();/*按學(xué)號(hào)查詢*/inquire_tel(struct stud *p)char tel20; struct stud *f; f=p; clrscr(); printf("n 請(qǐng)輸入要查找的電話:"); s
34、canf("%s",&tel); if(p=null) printf("n您要查找的學(xué)生暫時(shí)不存在,請(qǐng)按任意鍵返回n"); bioskey(0); else if(strcmp(p->tel,tel)!=0|p->tel=null) p=p->next; clrscr(); printf("nn該生有關(guān)信息為:nnnn"); printf("nn=通訊錄信息表=nn"); printf("姓名=省份=電話=生日(年-月-日)=郵編=大學(xué)n"); printf("
35、;-n"); printf("%s %s %s %d-%d-%d %s %sn",p->name,p->addr,p->tel,p->bir.y,p->bir.m,p->bir.d,p->yb,p->daxue); printf("-n"); printf("n"); p=f; getch(); /*查詢模塊*/ inquire_message() int choice=100; while(choice!=0) printf("n*查詢同學(xué)通訊信息*n")
36、; printf(" 1.按同學(xué)姓名查詢:n"); printf(" 2.按同學(xué)電話查詢:n"); printf(" 0.返回主菜單:n"); printf(" 請(qǐng)選擇(02):n"); scanf("%d",&choice); switch(choice) case 1:inquire_name(h);break; case 2:inquire_tel(h);break; case 0:break; default:printf("無此類查詢方式!n"); /*省份
37、統(tǒng)計(jì)*/ count_ad(struct stud *p) int count=0; char count_ad20; printf("n 輸入要統(tǒng)計(jì)的省份名稱:n"); scanf("%s",count_ad); if(p=null) printf("n 該學(xué)生不存在!"); bioskey(0); else printf(" 在該省份的同學(xué):n"); printf("姓名=省份=電話=生日(年-月-日)=郵編=大學(xué)n"); printf("-n"); p=h; /*p指向
38、頭指針!*/ while(p!=null) if(strcmp(p->addr,count_ad)=0) printf("%s %s %s %d-%d-%d %s %sn",p->name,p->addr,p->tel,p->bir.y,p->bir.m,p->bir.d,p->yb,p->daxue); p=p->next; count+; printf("在這個(gè)省份的同學(xué)共有%d個(gè)",count); /*生日統(tǒng)計(jì)*/ count_birthday(struct stud *p) int co
39、unt=0; int count_birthday_month; printf(" 請(qǐng)輸入要統(tǒng)計(jì)的月份:n"); scanf("%d",&count_birthday_month); if(p=null) printf("n 該學(xué)生不存在!"); bioskey(0); else printf(" 在這個(gè)月過生日的同學(xué):記得祝賀他們生日快樂!n"); printf("姓名=省份=電話=生日(年-月-日)=郵編=大學(xué)n"); printf("-n"); p=h; whi
40、le(p!=null) if(p->bir.m=count_birthday_month) printf("%s %s %s %d-%d-%d %s %sn",p->name,p->addr,p->tel,p->bir.y,p->bir.m,p->bir.d,p->yb,p->daxue); p=p->next; count+; printf("在這個(gè)月過生日的同學(xué)有%d個(gè)",count); /*統(tǒng)計(jì)模塊*/ count_message() int choice=100; while(choic
41、e!=0) printf("nn*統(tǒng)計(jì)同學(xué)通訊信息*n"); printf(" 1.按省份統(tǒng)計(jì)信息;n"); printf(" 2.按生日統(tǒng)計(jì)信息;n"); printf(" 0.返回主菜單;n"); printf(" 請(qǐng)選擇(0-2):n"); scanf("%d",&choice); switch(choice) case 1:count_ad(h);break; case 2:count_birthday(h);break; case 0:break; defa
42、ult:printf("輸入有誤!n"); /*主程序*/main() int b; printf("輸入任意鍵進(jìn)入。nn"); bioskey(0); do clrscr(); printf("nnn *歡迎進(jìn)入* nn"); printf(" * 學(xué)生通訊錄管理系統(tǒng) *nn"); printf(" * 1輸入學(xué)生信息 *nn"); printf(" * 2輸出學(xué)生信息 *nn"); printf(" * 3更新學(xué)生信息 *nn"); printf(&q
43、uot; * 4查詢學(xué)生信息 *nn"); printf(" * 5統(tǒng)計(jì)學(xué)生信息 *nn"); printf(" * 6保存信息 *nn"); printf(" * 7讀取信息 *nn"); printf(" * 0退出系統(tǒng) *nn"); printf(" * 請(qǐng)選擇(07) : *nn"); scanf("%d",&b); switch(b) case 1: input_message(); break; case 2: output_message(h)
44、; break; case 3: renew_message(); break; case 4: inquire_message(); break; case 5: count_message(); break; case 6: save_message(h); break; case 7: read_message(); break; case 0: break; while(b!=0);2數(shù)組方式:#include <stdio.h>#include <string.h>#define max 200#define n 9 int sum; /*日期結(jié)構(gòu)體類型*/ struct b_type int year; /*年*/ int month; /*月*/ int day; /*日*/ ; /*通訊錄結(jié)構(gòu)體類型*/ struct s_type int num; /*序號(hào)*/ char name20; /*姓名*/ char address20; /*省份*/ char tel40; /*電話*/ struct b_type birthday; /*生日*/ char yb20; /*郵編*/ char daxue50; /*大學(xué)*/ char ba
溫馨提示
- 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨時(shí)保姆應(yīng)急合同模板
- 2025年度大型活動(dòng)臨時(shí)舞臺(tái)搭建合同書3篇
- 田園風(fēng)格二手房買賣合同模板
- 舞蹈教練經(jīng)紀(jì)人聘用協(xié)議
- 公共工程項(xiàng)目施工合同違約協(xié)議書
- 旅游咨詢市場(chǎng)管理辦法
- 證券公司固定資產(chǎn)管理方案
- 地質(zhì)設(shè)備維護(hù)勞務(wù)分包協(xié)議
- 航空航天產(chǎn)業(yè)房產(chǎn)轉(zhuǎn)讓范本
- 農(nóng)村道路安全使用與規(guī)劃指南
- GB/T 32285-2015熱軋H型鋼樁
- 中考數(shù)學(xué)真題變式題庫
- FZ/T 91019-1998染整機(jī)械導(dǎo)布輥制造工藝規(guī)范
- 主持人培訓(xùn) 課件
- SHSG0522003 石油化工裝置工藝設(shè)計(jì)包(成套技術(shù))內(nèi)容規(guī)定
- 制造部年終總結(jié)報(bào)告課件
- 企業(yè)大學(xué)商學(xué)院建設(shè)方案
- 粵科版高中通用技術(shù)選修1:電子控制技術(shù)全套課件
- 幼兒園大班數(shù)學(xué):《長頸鹿的水果店》 課件
- 檢驗(yàn)批現(xiàn)場(chǎng)驗(yàn)收檢查原始記錄
- 接地裝置安裝試驗(yàn)記錄
評(píng)論
0/150
提交評(píng)論