1 一、 实践的目的和要求 加深对 C 语言课程所学知识的理解,进一步巩固 C 语言算法规则.学会编制结构清晰.风格良好.数据结构适当的 C 程序,从而具备解决综合性问题的能力. 二、 内容 在熟练掌握 C 语言的基础知识:数据类型(整型.实型.字符型.指针.数组.结构等);运算类型(算术运算.逻辑运算.自增自减运算.赋值运算等);程序结构(顺序结构.判断选择结构.循环结构);大程序的功能分解方法(即函数的使用)等.进一步掌握各种函数的应用以及文件的读写操作等. 三、 实验任务:通讯录 设计要求:实现菜单设计,使用数据文件保存和修改,应用结构体和指针 功能要求:通讯录信息生成,存储,查询,修改,插入,删除,打印等. 四、 设计思路 1. 通讯录的主要信息包括:编号,姓名,性别,联系电话.住址,邮编. 2. 用结构体数组来存储信息,有 Data_Input 函数来实现信息的录入,用 Data_Show 函数来显 示 打印信息,用Data_Sreach函数来查找 信息,用Data_Insert函数来插入信息,用Data_Alter 函数来修改信息,用Data_Delete函数来删除信息,用Data_Save函数来保存信息,用 Exit 函数来退 出 通讯录. 3. 小 组分工 ,每 个 人 分配 几 个 函数,按 情 况 进行 分配 任务. 五 、 程序代 码 #include /*字符函数和字符串 函数*/ #include /*字符模 式 函数(调 用getch()函数)*/ #include /*输 入输 出 函数*/ int i; struct friend /*电子 通讯录结构定 义 */ { char num[5]; /*编号*/ char name[11]; /*名字*/ char sex[2]; /*性别*/ char phone[12]; /*电话*/ char address[26]; /*地 址*/ char post_num[11]; /*邮编*/ }friends[50]; FILE *fp; void Data_load() /*数据载 入函数*/ { int j; fp=fopen("friend.txt","r+"); /*打开 文件friend.txt*/ 2 if(fp==NULL) /*判断是否存在friend.txt,如果不存在则创建*/ { fp=fopen("friend.txt","w"); i=0; } else { for(i=0;i<50;i++) { j=fgetc(fp); if(j==EOF) /*判断是否到了文件尾*/ return; fseek(fp,i*sizeof(struct friend),0); fread(&friends[i],sizeof(struct friend),1,fp); /*从文件中读取一条记录*/ } } } void Menu_Select() /*显示菜单界面*/ { printf(" \n"); printf(" \n"); printf(" \n"); printf(" Address Book Management System \n"...