计划完成提醒系统C语言,通信录管理计划系统C语言知识程序设计.doc
#+
C語言程序設(shè)計
——通訊錄管理系統(tǒng)
實
習(xí)
報
告
組長: 姚士平 組員: 胡恒山 芮青榮
南京郵電大學(xué)電氣信息工程B100509班
2011
※實習(xí)前論:
實習(xí)的目的、要求與內(nèi)容
一、實習(xí)的目的和要求
經(jīng)過了一個學(xué)期對C語言的學(xué)習(xí),大家對C語言有了一定的認識。在此基礎(chǔ)上,為了加深對C語言課程所學(xué)知識的理解,進一步鞏固C語言算法規(guī)則,學(xué)會編制結(jié)構(gòu)清晰、風(fēng)格良好、數(shù)據(jù)結(jié)構(gòu)適當?shù)腃程序,從而具備解決綜合性問題的能力,特設(shè)此課程實習(xí)內(nèi)容,通過完成一項具體的程序來檢驗對所學(xué)知識的掌握情況。要求能夠完成一項完整并且具有初步實用性,經(jīng)編寫調(diào)試,確保能夠正常運行的小型程序。
二、實習(xí)所涉及的內(nèi)容
實習(xí)內(nèi)容所涉及的均為C語言的基礎(chǔ)知識,包括:數(shù)據(jù)類型(整型、實型、字符型、指針、數(shù)組、結(jié)構(gòu)等);運算類型(算術(shù)運算、邏輯運算、自增自減運算、賦值運算等);程序結(jié)構(gòu)(順序結(jié)構(gòu)、判斷選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu));大程序的功能分解方法(即函數(shù)定義與調(diào)用)等,以及進一步掌握各種函數(shù)的應(yīng)用以及文件的讀寫操作等。
※實習(xí)細述:
通訊錄管理系統(tǒng)
一、程序功能:
1、完成通訊錄信息的管理,包括添加、修改、刪除、查詢功能。盡量豐富聯(lián)系人的各項信息。
2、能夠根據(jù)聯(lián)系人的信息單獨或分類查詢。
3、聯(lián)系人的生日提醒功能。
二、設(shè)計思路
所有成員的記錄用結(jié)構(gòu)體數(shù)組存儲,每個結(jié)構(gòu)體包括姓名、性別、生日、電話號碼、電子郵箱、家庭住址及分類七個字符型數(shù)組;上述的各項功能由定義函數(shù)分別實現(xiàn),由主函數(shù)控制各個函數(shù)的調(diào)用;整個程序產(chǎn)生于文本界面,通過一些字符簡單對界面進行裝飾。具體的各個函數(shù)設(shè)計思路如下:
1、導(dǎo)入通訊錄函數(shù):通過fopen函數(shù)打開指定文件,并用fread函數(shù)將文件內(nèi)的數(shù)據(jù)讀入結(jié)構(gòu)體數(shù)組中,這兩個標準庫函數(shù)都定義在stdio.h頭文件中。整個函數(shù)的返回值為整型i,用來并表示導(dǎo)入的數(shù)據(jù)成員個數(shù),而后將該值賦給全局變量count用來計數(shù)。
2、保存文件函數(shù):通過將文件名字符串作為參數(shù)傳入,用fwrite函數(shù)將當前結(jié)構(gòu)體數(shù)組中的全部數(shù)據(jù)寫入文件中并關(guān)閉文件。該函數(shù)無返回值。
3、分類顯示成員信息函數(shù):無參數(shù)傳入,無返回值,用戶根據(jù)提示輸入指令,用switch語句分析指令并遍歷所有結(jié)構(gòu)體數(shù)據(jù),將符合的數(shù)據(jù)輸出。該函數(shù)也沒有返回值。
4、錄入新成員信息函數(shù):該函數(shù)沒有參數(shù),通過提示用戶輸入數(shù)據(jù);當輸入的姓名或電話號碼重復(fù)時,提示用戶重復(fù)并重新輸入;被錄入一個完整的新數(shù)據(jù)后讓全局變量n自增,并將其作為函數(shù)的返回值返回。
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ù)傳入,顯示已存入的所有成員的姓名,由用戶選擇撥打電話的姓名,依次顯示電話號碼的各個數(shù)字,并用Sleep函數(shù)設(shè)置一定時間的延時以表現(xiàn)號碼依次輸出的效果,該函數(shù)包含在windows.h頭文件中。成功撥號則返回整數(shù)1,輸入了錯誤的姓名則返回0。
9、主函數(shù):用switch語句來判斷用戶輸入的指令,轉(zhuǎn)向具體的函數(shù)來執(zhí)行,并根據(jù)函數(shù)的返回值判斷執(zhí)行結(jié)果并予以提示。主函數(shù)中用exit(0);語句結(jié)束程序,并在結(jié)束前提示用戶保存數(shù)據(jù)。
整個程序由上述9個函數(shù)組成。此外,源程序?qū)⒔Y(jié)構(gòu)體數(shù)組和計數(shù)變量count以及文件指針fp設(shè)為全局變量,目的是為了讓所有函數(shù)都能正常使用這幾個變量,保證整個程序的正常運行。
三、程序源代碼及注釋
#include
#include
#include
#include
#define count 20
typedef struct Birthday
{
int day;
int month;
int year;
}Birthday;
typedef struct Student
{
char name[10];
char sex[5];
Birthday date;
char phone[10];
char email[10];
char address[10];
char others[10];
}stud;
FILE *fp;
FILE *fp2;
FILE *fp3;
int n=0;
總結(jié)
以上是生活随笔為你收集整理的计划完成提醒系统C语言,通信录管理计划系统C语言知识程序设计.doc的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言输入r1 r2垫片的面积,2011
- 下一篇: 腾讯大王卡和联通大王卡有什么区别(腾讯大