C语言程序设计小组(3)

2019-04-22 20:51

北京石油化工学院 BEIJING INSTITUTE OF PETROCHEMICAL TECHNOLOGY 课程设计用纸

删除所有 If(num!=0) 开始

结束 是否继续删除 删除失败 删除成功 确认是否删除 strcmp(student[i].id,id)==0 strcmp(student[i].name,name)==0 输入要删除的编号、姓名

删除delete流程图

10

北京石油化工学院 BEIJING INSTITUTE OF PETROCHEMICAL TECHNOLOGY 课程设计用纸

11

开始 输入姓名、电话 Listbyphone() Listbyname() 排序成功 是否显示 Showall 结束 排序list流程图

北京石油化工学院 BEIJING INSTITUTE OF PETROCHEMICAL TECHNOLOGY 课程设计用纸

八、源程序清单

#include #include

#include //控制字符串 #include //控制台输入输出 struct record //定义一个结构体数组 {

char id[10]; //编号 char name[20];//姓名 char phone[20];//电话 char adress[40]; //地址 char postcode[10]; //邮编 char e_mail[30]; //e_mail char relation[20];//关系 char QQ[20];//QQ char sex[10];//性别 char birthday[20];//生日 }student[500];

int num=0;//外部变量num为文件中的纪录数 FILE *p; //定义一个指向文件的指针变量p void mainmenu();//主菜单 void readfromfile();//读取文件 void newrecord();//新添纪录 void showall();//输出记录 void searchmenu();//查询菜单 void searchbyid();//按编号查询 void searchbyname();//按姓名查询 void searchbyphone();//按电话查询 void deletemenu();//删除菜单 void deleteall();//删除所有 void deleteone();//删除单个

void deletebyphone();//按电话号码删除 void deletebyname();//按姓名删除 void listmenu();//排序菜单

void listbyphone();//按电话号码排序 void listbyname();//按姓名排序 void copy();//复制菜单

void writetofile();//保存退出 void main() {

readfromfile(); while (1) {

12

北京石油化工学院 BEIJING INSTITUTE OF PETROCHEMICAL TECHNOLOGY 课程设计用纸

mainmenu(); } }

void readfromfile()//从文件导出,判断是否有通讯录 {

if((p=fopen(\将fopen函数的返回值赋给指针变量P,打开输入文件student.txt {

printf(\通讯录文件不存在\

if ((p=fopen(\打开输出文件student.txt {

printf(\建立失败\

exit(0); //终止正在执行的程序 } else {

printf(\通讯录文件已建立\ printf(\按任意键进入主菜单\ getch(); return; }

exit(0); }

fseek(p,0,2); //文件位置指针移动到文件末尾,fseek(文件类型指针,位移量,起始点) if (ftell(p)>0) //ftell函数的目的是得到当前位置,用相对于文件开头的位移量来表示,文件不为空 {

rewind(p); //文件位置指针移动到文件开始位置,此函数没有返回值

for (num=0;!feof(p) && fread(&student[num],sizeof(struct record),1,p);num++);

/*fread(buffer,size,count,pt)(地址,读写的字节数,读写多少数据项,FILE类型指针),每次从P指向的文件中读入结构体数组的一个元素;

feof检查文件是否结束,遇见文件结束符,返回非零值*/ printf(\文件导入成功\

printf(\按任意键返回主菜单\ getch(); return; }

printf(\文件导入成功\

printf(\通讯录文件中无任何纪录\ printf(\按任意键返回主菜单\ getch(); return; }

void mainmenu()//主菜单

13

北京石油化工学院 BEIJING INSTITUTE OF PETROCHEMICAL TECHNOLOGY 课程设计用纸

{

char choice;

system(\清屏

printf(\主菜单 ********************\ printf(\新添纪录 2-输出记录 **************\ printf(\查询菜单 4-删除菜单 **************\ printf(\记录排序 6-文件复制 **************\printf(\保存退出 8-不保存退出*************\ printf(\ printf(\请选择:\ choice=getch(); switch(choice) {

case '1':newrecord();break; case '2':showall();break; case '3':searchmenu();break; case '4':deletemenu();break; case '5':listmenu();break; case '6':copy();break; case '7':writetofile();break; case '8':exit(0); break; default:mainmenu(); } }

void newrecord()//添加记录 {

printf(\请输入信息 ****************\\n\ printf(\输入编号:\

scanf(\ printf(\输入姓名:\

scanf(\ printf(\输入电话号码:\ scanf(\ printf(\输入地址:\

scanf(\ printf(\输入邮编:\

scanf(\ printf(\输入e-mail:\

scanf(\printf(\输入QQ:\

scanf(\printf(\输入性别:\

scanf(\printf(\输入生日:\

14


C语言程序设计小组(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:发电机试验

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: