以本班同学的具体数据为背景,设计一个本班同学通讯录。
1) 通讯录编辑(添加、删除)。
2) 按不同的项进行查找。
3) 对已存在的通讯录按不同的项排序。
4) 将通讯录写入文件
5)从文件读入通讯录
备注:通讯录至少应该有以下数据项:
姓名,地址,电话,邮编,E-mail。
(1)人数不定,每输入一个人编号。
(2)记录每位同学的姓名、电话号码、地址、邮编和E-mail。
(3)可对记录中的姓名和电话号码等进行修改。
(4)可增加或删除记录
(5)加入查询功能,通过姓名或电话号码查询到同学的条目。
(6)在开始画面加入简单的菜单便于选择功能。
(7)将信息保存在文件。
系统功能需求:
<1>记录功能:记录每位同学的姓名、电话号码、地址、邮编和E-mail
<2>查找功能:按不同方式查找信息
<3>添加功能:添加信息
<4>排序功能:将信息按照姓名排序
<5>删除功能:删除指定的信息
<6>保存在文件:将做完的信息保存在文件
<7>结束:结束程序
选择功能函数
void next()
{
void show();
void seek();
void add();
void sort();
void out();
void keep();
int end();
int b;
printf("\t***********************NEXT**************************\n");
printf("\t请选择接下来的操作:");
scanf("%d",&b);
printf("\t*****************************************************\n");
switch(b)
{
case 1 :show();break;
case 2 :seek();break;
case 3 :add();break;
case 4 :sort();break;
case 5 :out();break;
case 6 :keep();break;
case 7 :end();break;
}
}
输入函数
void write()
{
void next();
void write1();
printf("\t请输入信息(每次输入1时继续输入,输入2时停止输入)\n");
printf("\t姓名\t家庭电话\t地址\t邮编\tE-mail\n");
write1();
}
void write1()
{
void next();
void write2();
int a;
printf("是否输入:");
scanf("%d",&a);
printf("\n");
switch(a)
{
case 1 :write2();break;
case 2 :next();break;
}
}
void write2()
{
void write1();
j=i+1;
printf("%d\t",j);
scanf("%s%d%s%d%s",stu[i].name,&stu[i].phone,stu[i].adress,&stu[i].postcode,stu[i].e_mail);
i=i+1;
write1();
}
输出函数
void show()
{
void next();
int s=0;
printf("\t下面将会显示输入的数据:\n");
printf("\t姓名\t家庭电话\t地址\t邮编\tE-mail\n");
for(i=0;i
查找函数
void seek()
{
int q;
void numberseek();
void nameseek();
printf("\t请选择搜索方式:1~按名字查找\n\t 2~按家庭电话号码查找\n");
printf("\t请选择查找方式:");
scanf("%d",&q);
switch(q)
{
case 1 :nameseek();break;
case 2 :numberseek();break;
}
}
void nameseek()
{
void next();
char d[5];
printf("\t请输入要查找学生的名字:");
scanf("%s",d);
for(i=0;i
添加函数
void add()
{
void next();
void write1();
i=j;
printf("\t请输入信息(每次输入1时继续输入,输入2时停止输入)\n");
printf("\t姓名\t家庭电话\t地址\t邮编\tE-mail\n");
write1();
}
#include
#include
#include
struct Student
{
char name[20];
int long phone;
char adress[40];
int postcode;
char e_mail[30];
}stu[100];
int j=0,i=0;
void next()
{
void show();
void seek();
void add();
void sort();
void out();
void keep();
int end();
int b;
printf("\t***********************NEXT**************************\n");
printf("\t请选择接下来的操作:");
scanf("%d",&b);
printf("\t*****************************************************\n");
switch(b)
{
case 1 :show();break;
case 2 :seek();break;
case 3 :add();break;
case 4 :sort();break;
case 5 :out();break;
case 6 :keep();break;
case 7 :end();break;
}
}
void write()
{
void next();
void write1();
printf("\t请输入信息(每次输入1时继续输入,输入2时停止输入)\n");
printf("\t姓名\t家庭电话\t地址\t邮编\tE-mail\n");
write1();
}
void write1()
{
void next();
void write2();
int a;
printf("是否输入:");
scanf("%d",&a);
printf("\n");
switch(a)
{
case 1 :write2();break;
case 2 :next();break;
}
}
void write2()
{
void write1();
j=i+1;
printf("%d\t",j);
scanf("%s%d%s%d%s",stu[i].name,&stu[i].phone,stu[i].adress,&stu[i].postcode,stu[i].e_mail);
i=i+1;
write1();
}
void show()
{
void next();
int s=0;
printf("\t下面将会显示输入的数据:\n");
printf("\t姓名\t家庭电话\t地址\t邮编\tE-mail\n");
for(i=0;i
通过为期一周的课程设计,我对《C语言》这门课程有了更深一步的了解。它是计算机程序设计的重要理论技术基础,在我们信息与计算科学专业的学习中占据着十分重要的地位。同时也使我知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。因为我学习知识就是为了实践。而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。
C语言课程设计-通讯录管理系统_c语言课程设计之通讯录管理系统资源-CSDN文库https://download.csdn.net/download/NBITer/87369754