《通讯录》课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《通讯录》课程设计报
一、案例描述
1.、通讯录功能
需要有完整的功能,创建,显示,查询,修改,删除,添加,读取通讯录。
二、界面设计
菜单:
0--创建通讯录
1--显示通讯录
2--查询通讯录
3--修改通讯录
4--删除通讯录
5--添加通讯录
6--保存通讯录
7--读取通讯录
8--结束程序
本软件界面友好,不难操作,单击一格后会提示搜索使用时间,此时按任意键继续。
并且显示记录条数,以及用户需要储存的信息条数的变化,只有用户输入即可。
三、模块化设计方案
1、系统主要函数及功能
1)#include
#include
#include
#include
#define M 50 /*定义常数表示记录数*/
2)menu_select()函数:菜单函数,函数返回值为整数,代表所选的菜单项。
3)Enter函数:输入记录,形参为结构体数组,函数值返回类型为整型表示记录长度。Int enter(addr t[])
4)Find函数:查找函数,参数为记录数组和记录条数以及姓名s
int find(addr t[],int n,char *s)
5)Delete函数:删除函数,参数为记录数组和记录条数
int delete(addr t[],int n)
6)Add函数:插入记录函数,参数为结构体数组和记录数
int add(addr t[],int n)
7)save函数:保存函数,参数为结构体数组和记录数
void save(addr t[],int n)
8)load函数:读入函数,参数为结构体数组
int load(addr t[])
9)modify函数:修改通讯录
void modify(addr t[],int n)
2、主函数调用各功能函数流程图
四、数据结构描述
void list(addr t[],int n)
{
int i;
printf("\n\n*******************ADDRESS******************\n");
printf("name qq telephone\n");
printf("------------------------------------------------\n");
for(i=0;i printf("%-20s%-20s%-25s\n",t[i].name,t[i].qq,t[i].tele); if((i+1)%10==0) /*判断输出是否达到10条记录*/ {printf("请按任意键继续...\n"); getchar(); } printf("************************END*******************\n");} /*显示指定的一条记录*/ void print(addr temp) { printf("\n\n********************************************\n"); printf("name qq telephone\n"); printf("------------------------------------------------\n"); printf("%-20s %-20s %-25s\n",,temp.qq,temp.tele); printf("**********************END***********************\n");} /*查找记录*/ void search(addr t[],int n) {char s[20]; /*保存待查找姓名字符串*/ int i; /*保存查找到结点的序号*/ printf("请输入待查找人姓名: "); scanf("%s",s); i=find(t,n,s); /*调用find函数,得到一个整数*/ if(i>n-1) /*如果整数i值大于n-1,说明没找到*/ printf("不能找到! \n"); else print(t[i]); /*找到,调用显示函数显示记录*/} 五、算法设计 1、搜索算法(流程图) 2、速度控制算法(流程图) 3、表达式计算器 六、程序运行结果 (第一次使用) (创建通讯录) (显示通讯录)(查找通讯录) (修改通讯录)(删除通讯录)(读取通讯录)(添加通讯录)(保存通讯录) 七、总结 1、工作时间 主菜单的实现–半小时 创建通讯录– 1小时 显示通讯录—1小时 查询通讯录—2小时 修改通讯录—2小时 删除通讯录—2小时 添加通讯录—2小时 保存通讯录—半小时 读取通讯录—半小时 结束程序—20分钟 通讯录记录条数—2小时 是否继续程序—半小时 2、分工情况 每位成员都先了代码,把相对好的版块选取,然后由组长拼接,把报告做出来。 3、心得体会 通过这次的课程学习,学会了合作与交流中的一些大道理,当然专业知识比如调用函数。这样的学习还是挺好的。 六、总程序 #include #include #include #include #define M 1000 /*定义常数表示通讯录条数*/ typedef struct/*定义数据结构*/ { char name[20]; /*姓名*/ char qq[15]; /*QQ号码*/ char tele[15]; /*电话号码*/ char email[30]; /*电子邮件*/ char home[30]; /*家庭住址*/ }addr; int length;/*保存通讯录长度*/ /*菜单函数,函数返回值为整数,代表所选的菜单项*/ int menu() { int c; system("cls"); /*清屏*/