C语言课程设计报告范本.doc
文本预览下载声明
C语言课程设计论文
学生姓名: 陈丹
学生学号: 20091020101
所在班级: 信息与计算科学一班
任课教师: 马老师
通讯录管理系统
【设计目的】
设计“通讯录管理系统”使其具有数据插入、修改、删除、显示和查询等功能。
数据包括:人名、工作单位、电话号码和E-mail地址。
可对记录中的姓名和电话号码进行修改。
可增加或删除记录。
可显示所有保存的记录。
可按人名或电话号码进行查询。
【设计思路】
根据要求,电话簿数据以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保存记录以进行修改,删除,查找等操作;另外还应提供键盘式选择菜单实现功能选择。
【总体设计】
图1 系统功能模块图
【详细设计】
主函数
主函数设计要求简洁,只提供部分提示语和函数的调用
【程序】
图2. 主函数流程图
Void menu() /*主界面*/
{
int n, w1;
void enter(); void add(); void modify(); void browse(); void deleter(); void search();
do
{
puts(\t******************************菜单*****************************\t\n\n);
puts(\t\t\t\t1.新建联系人);
puts(\t\t\t\t2.添加联系人);
puts(\t\t\t\t3.修改);
puts(\t\t\t\t4.删除);
puts(\t\t\t\t5.浏览);
puts(\t\t\t\t6.查找);
puts(\t\t\t\t7.退出);
puts(\n\n\t***************************通讯录******************************\t\n);
printf(请选择服务种类(1-7) : [ ]\b\b);
scanf(%d,n);
if(n1||n7)
{w1=1;getchar();}
else w1=0;
}while(w1==1);
switch(n)
{
case 1: enter(); break; /*输入模块*/
case 2: add(); break; /*添加模块*/
附录:源代码
#define N 50
#includestdio.h
#includestring.h
struct people
{char name[20]; char company[50]; char num[15]; char mail[20];}peop[N];
void printf_face()
{ printf(\n\t姓名\t单位\t电话号码\t邮箱\n); }
void printf_one(int i)
{ printf(\t%s\t%s\t%s\t%s\n,peop[i].name,peop[i].company,peop[i].num,peop[i].mail); }
void printf_n(int n)
{ int j;
for(j=0;jn;j++)
{ if((j!=0)(j%10==0)) {printf(\n\nPress any key to continue...:); getchar(); puts(\n\n);}
printf_one(j);
} getchar();
}
int load()
{ FILE *fp;
int i;
if((fp=fopen(file,rb))==NULL)
{ printf(\nCan not open file\n);
exit(0);
}
for(i=0;!feof(fp);i++)
fread(peop[i],sizeof(struct people),1,fp);
fclose(fp);
return(i-1);
}
int modify_data(int i,int n)
{ int c,w1; void input(int i); void menu();
do
{ puts(\n修改选项=\n\n 1).姓名 2).单位 3).电话号码 4).邮箱 5).所有数据 6).取消并返回);
显示全部