1、 第 1 页(共 27 页) C C 语言课程设计语言课程设计 设计题目:学生通讯录管理系统 第 2 页(共 27 页) 课程课程题目:学生通讯录管理系统题目:学生通讯录管理系统 要求:学生通讯录信息包括:学号、姓名、 班机、联系电话、E-mail、宿舍等 主要功能: 1、 通讯录信息录入功能 2、 通讯录信息删除功能 3、 通讯录信息浏览功能 4、 通讯录信息查询功能 5、 按学号排序功能 一、总体设计一、总体设计 首先,整个系统必须有一个主函数,为 了尽量提高程序的易修改性,且不至于相互 干扰,将每一个功能分成不同的模块,用不 同的函数来实现,例如在我写的这个程序 中,一共用了 11 个函
2、数,分别是: 主菜单函数 menu() 、关于函数 gaunyu () 、帮助函数 help() 、输出单个学生信息 函数 shuchu() 、输入函数 shuru() 、输出 所有学生信息函数 findall() 、按姓名查找 函数 findname () 、 按学号查找函数 findnum () 、删除函数 shanchu () 、 排序函数 paixu 第 3 页(共 27 页) () 、主函数 main() ,这样在整个程序的设 计过程中也就一目了然,写起来也相对轻松 了不少。 这个程序我只是总体上参考了一下网 上程序的架构,具体的各个函数是参照课本 上链表那一章的内容的,比如结构体的
3、 建立、查找和排序等功能,这些书上都有类 似的,其中排序功能虽没有原版的,但是在 第六章中有一个用冒泡法排序的例题,我就 是仿照这个模式来对结构体进行排序的,总 之整个程序中蕴含了我很多的汗水。 二、具体设计二、具体设计 关于这个程序的具体设计,也不是一两 句话就能说完的,所以我也不想再在这里赘 述了,因为程序里都可以看的到,几乎每个 函数都倾注了我的大量汗水,我在这上面花 了不少的时间,不过从中也收获了很多,因 为不停地修改不停的调试,总之还是直接看 源程序吧,因为也没必要在这里重复地说废 话。 第 4 页(共 27 页) 三、源代码三、源代码 以下是整个程序的源代码,其中我的主 菜单函数是
4、很美观的,但由于这里字体和板 式的限制,不能很好的显现,可以看我下面 程序运行的截图就知道了。 #include #include #include #include #include #define NULL 0 struct student long num; char name20; int banji; char tel11; char Email20; int sushe; struct student *next; 第 5 页(共 27 页) ; struct student *stu; int n; void menu(void) /*主菜单函数*/ system(“cls“); puts(“* *“); puts(“* _学生通讯录管理系 统_ *“); puts(“* *“); puts(“* 计 *“); puts(“* *“); puts(“* 算 *“); puts(“* 0 1=录入学生通讯录 信息 *“); puts(“* 9 刘 2=列出所有学生通 第 6 页(共 27 页) 讯录 机 *“); puts(“* 0 3=按姓名查询信息 *“); puts(“* 4 显 4=按学号查询信息 科 *“); puts(“* 1 5=删除学生信息 *“); puts(“* 1 安 6=按学号将通讯录 排序 学 *“); puts(“* 3 7=关于