1、 C C 语言语言程序程序课程设计课程设计 题题 目目 学生通讯录系统 2010 年 6 月 1 日 【课程设计内容课程设计内容】 根据要求做一个学生通讯录系统,具体作到:几个基本数据 库:学号,姓名,系别,电话号码。要求系统包含如下功能(设计函数实现) : 可以输入和追加学生记录 可以显示学生记录 可以检索某个学生的记录 可以删除某个学生的记录 可以修改某个学生的记录 可以退出系统 可以显示主菜单,并且用户可以自由选择主菜单 进入系统前,要求对用户名和密码进行验证 【课程课程设计设计综合综合】 本课程设计涉及到的内容丰富,知识点较多,作好本系统必 须用到本课程的:条件语句、循环、数组、指针、
2、函数及结构体等知识点,基本 上涵盖了所有的 C 语言的编程技巧。 【课程设计目的课程设计目的】 目的是让学生将本课程所学的知识综合运用到实际当中,自 己动手设计一个学生通讯录系统, 通过编程实训使学生的实践动手能力和综合运 用能力得到较大的提升,为本专业后续课程的学习打下良好的基础。 【课程设计学时课程设计学时】 16 【课程设计实现步骤课程设计实现步骤】( (每一步骤要求写出详每一步骤要求写出详细设计方法细设计方法) ) 1 1 进入系统前,对用户名和密码进行验证的设计 用户名和密码设置于进入主菜单之前,定义四个字符型的数组,用两个数组 存放用户名和密码,另外两个数组接收用户输入的用户名和密
3、码,然后用字符串 比较函数比较用户输入的用户名和密码是否与存放的正确用户名和密码一致, 如 果一致返回“ 1”,进入主菜单。否则返回“ 0” ,直接跳出主菜单,程序结束。 2 2 主菜单的设计 用 do-while 循环控制主菜单的显示,里面再用 switch( )控制,使用户的 选择与用户要进入的函数一致。 3 3 各个子菜单的设计 输入和追加学生记录 输入和追加函数用一个 while 循环控制用户对信息的输入, 及存取信息空间 的开辟,然后 while 里面用一个 if 语句控制循环的结束。 显示学生记录 用 while 循环语句控制信息的输出、显示。当信息全部输出,循环结束。 检索某个学
4、生的记录 用 while 循环语句控制, 使用户输入检索的学生名字与通讯录里面所有的名 字比较,如果两个名字的字符串长度相等,说明用户检索的学生的信息找到,如 果所有名字里都没有与用户输入的名字字符串长度相等的, 说明没有用户检索的 人的信息。 删除某个学生的记录 用 while 循环语句查找用户输入的学生信息,查找方法与检索学生记录一 样,如果找到则删除,输出此学生记录已删除,跳出循环。如果没找到,则输出 没有此学生的信息,跳出循环。 修改某个学生的记录 用 while 循环语句查找用户输入的学生信息,查找方法与检索学生记录一 样,如果找到则提示用户输入新的信息,将原来的学生记录覆盖,输出信
5、息修改 成功,跳出循环。如果没找到,则输出没有此学生的信息,跳出循环。 退出系统 用主菜单中的switch ( ) 语句控制, 只要用户输入退出的信息没有switch( ) 语句里的 case 语句与之对应的选项,就可以直接退出了。 【课程设计实现源代码课程设计实现源代码】 /* 学生通讯录系统.c */ #include “stdio.h“ #include “conio.h“ / getch()和 getche()函数的头文件! / #include “string.h“ #include “stdlib.h“ / stdlib.h 与 alloc.h 是一样的! / #define S
6、struct student #define LEN sizeof(S) struct student char num15; / 学号 / char name15; / 姓名 / char xi20; / 系别 / char tel15; / 电话 / S *next; ; int mima(void); / 函数说明 / int Mainmenu(char x 20,int); S *AddList(S*); S *Insert(S*,S*); S *Delete(S*); void Display(S*); void LookFor(S*); void Revise(S*); void main( ) / 主函数 / int a,b; char main 20