通讯录管理系统课程设
计报告
HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】
设计课题题目
一、课程设计目的与要求 1.课程设计目的
(1) 综合运用之前所学知识(选择控制,循环控制,数组,函数,指针,结构
体和文件等)来完成一个简单的信息管理程序的设计。
(2) 充分体现和体会函数在程序设计中的必要性和实用性,并反映主函数main
()在程序设计中的实现思路和方法。
2. 课程设计要求
制作一个通讯录系统。
(1)该程序具有查找、添加、修改、删除功能。
(2)通讯录包括:姓名、电话、街道、城市、省、邮编等。
二、总体设计
根据系统的要求,系统总体设计如图1所示。
图 信息录入管理系统 三、详细设计 1、数据结构设计通通 #include<> /*标准函数库*/ #include<> /*字符串函数库*/ 录录录#define FILENAME \"\" struct date 信信 通通讯录信息删 通讯录信息修改 通讯录信息增加通讯录信息查询#include<> /*标准输入输出函数库讯讯讯*/ 信 息录入 息显示 息保存除 退出 \\n\"); { }
int Delete_a_record(struct date per[10],int n) {
char s[20]; int i=0,j;
printf(\"\请输入想删除记录中的名字:\"); scanf(\"%s\
while(strcmp(per[i].name,s)!=0&&i return(n); printf(\"\--------------------\\n\"); } int i=0; char sign,x[10]; while(sign!='n'&&sign!='N') { printf(\"\姓名:\"); } scanf(\"%s\ printf(\"\电话号码:\"); scanf(\"%s\ printf(\"\电子邮箱:\"); scanf(\"%s\ printf(\"\QQ:\"); scanf(\"%s\ gets(x); printf(\"\\n\是否继续添加?(Y/N)\"); printf(\"\请您选择(0-7):\"); }while(c>7&&c<0); return(c); scanf(\"%d\ int Input(struct date per[10],int n) fflush(stdin); ame,per[i-if(i>1&&i%10==0) { } printf(\"\-----------------------------------\\n\"); printf(\"\\"); system(\"pause\"); printf(\"\-----------------------------------\\n\"); 1].phone,per[i-1].QQ,per[i-1].email); printf(\"----------------------------------------------------------------------\\n\"); system(\"pause\"); } for(j=i;j strcpy(per[j].phone,per[j+1].phone); strcpy(per[j].name,per[j+1].name); strcpy(per[j].QQ,per[j+1].QQ); strcpy(per[j].email,per[j+1].email); void Query_a_record(struct date per[10],int n) { int m; printf(\"\\\n请选择查询方式:\\n\"); printf(\"\┌──────┐\\n\"); printf(\"\│1------姓名 │\\n\"); printf(\"\│2------电话 │\\n\"); printf(\"\│3------返回 │\\n\"); printf(\"\└──────┘\\n\"); printf(\"请选择:\"); scanf(\"%d\ while(m!=1&&m!=2&&m!=3&&m!=4) { } if(m==1) { } ; if(m==2) { char s[20]; int i=0; printf(\"\请输入想查询的电话:\"); scanf(\"\%s\ while(strcmp(per[i].phone,s)!=0&&i printf(\"\请输入想查询的姓名:\"); scanf(\"\%s\ while(strcmp(per[i].name,s)!=0&&i printf(\"\通讯录中没有此人!\\n\"); return; printf(\"输入错误,请重新选择:\"); scanf(\"%d\ } } ; } printf(\"\通讯录中没有此人!\\n\"); return; printf(\"\此人姓名: %s\\n\ printf(\"\此人QQ: %s\\n\ printf(\"\电子邮箱: %s\\n\ void Change(struct date per[10],int n) { char s[20]; } void WritetoText(struct date per[10],int n) { int i=0; FILE *fp; } fprintf(fp,\"-------------------------------------------------------------------------\\n\"); fprintf(fp,\"********************************共有%d条记录 i++; ame,per[i].phone,per[i].QQ,per[i].email); int i=0; printf(\"\请输入想修改的记录中的名字:\"); scanf(\"%s\ while(strcmp(per[i].name,s)!=0&&i printf(\"姓名:\"); scanf(\"%s\ printf(\"电话号码:\"); scanf(\"%s\ printf(\"QQ:\"); scanf(\"%s\ printf(\"电子邮箱:\"); scanf(\"%s\ printf(\"\\n修改成功!\"); return; ***************************\\n\ fclose(fp); 其是在调试原因出不来错误而导致个过程中,免的,但是不退缩。在与指导下,本次课程设果。 过程中,会因为某些结果,也会因为个别运行不出来,在这遇到问题是不可避在遇到困难是我们老师和同学的帮助我们顺利的完成了计,并调试出结 在调试结果出来时,我更是无比的兴奋,无比的自豪。总之,通过这次高级程序课程设计,我对自己的知识有了更好的掌握和应用,在以后的学习和生活中受用终身。在以后的学习中我们更多的要投身于实践中,多动手,多动脑,才能更好的把学习学好。 七、参考文献 [1]袁志祥主编 数据结构(C语言版)例题详解与课程设计指导第二版 中国科技大学出版社 [2]刘甫迎 刘光会 王蓉主编 程序设计教程(第二版) 北京电子工业出版社2008 [3]郭胜主编 程序设计 清华大学出版社 2002 [4]施燕妹 陈培 陈发吉主编 C#语言程序设计教程 中国水利水电出版社 2001 因篇幅问题不能全部显示,请点此查看更多更全内容