学生通讯录管理系统的设计与实现Word文件下载.docx
- 文档编号:17487395
- 上传时间:2022-12-06
- 格式:DOCX
- 页数:7
- 大小:16.16KB
学生通讯录管理系统的设计与实现Word文件下载.docx
《学生通讯录管理系统的设计与实现Word文件下载.docx》由会员分享,可在线阅读,更多相关《学生通讯录管理系统的设计与实现Word文件下载.docx(7页珍藏版)》请在冰豆网上搜索。
设计要求:
A.建立通讯录时,每个学生的信息包括:
学号,姓名,电话。
B.查找时,学号、姓名、电话均可以作为查询字段。
C.查看所有的通讯录信息时,所有记录需要时有序的(按学号排序,按姓名排序(字典序),按电话号码排序)。
D.存储结构:
要求使用顺序存储结构。
E.数据使用:
使用本班级的具体信息。
本次设计目的是学生信息管理系统,可存入每个学生的基本信息,所有学生信息都可根据名字、学号、电话、邮箱进行查询,也都可以根据这四个基本信息检索到一个学生并删除其数据。
输入形式:
student.txt,以文件形式进行输入。
输出形式:
根据不同的输入进行不同的操作。
达到功能:
能插入一个学生的信息,能删除一个学生的信息,能查询一个学生的信息。
测试数据:
班上70个同学的基本数据。
概要设计:
数据类型:
顺序链表ArrayList类
学生数据结构:
StuData类包含name、id、phone、email四个String基本类型。
所有操作写在Structure中,包含insert、remove、query、printAll。
Main函数用Java标准输入,循环输入,用switch判断输入进行各种操作,1进行建立信息系统从文件中读入操作,2进行插入一个学生数据的功能,3进行查询信息的操作,4进行删除通讯记录的操作,5进行打印所有学生信息的功能,6代表退出系统。
详细设计:
本程序是学生信息管理系统,构造了一种StuData数据结构,里面包含姓名、学号、电话、邮箱四个String类型的字段,具有的功能是,从文件中读入班级70个人的信息,用循环构造70个StuData对象,依次存入ArrayList<
StuData>
中,ArrayList是自己写的顺序型链表,用Objcet的数组进行存储数据,里面实现了insert、remove、迭代器等各种操作,具体代码如下:
#include<
stdio.h>
iostream>
math.h>
string.h>
queue>
algorithm>
time.h>
usingnamespacestd;
structStudent{
charnumber[20];
charname[20];
chartel[20];
charQQ[100];
};
StudentS[1000];
intcnt;
voidinit()
{
cnt=0;
FILE*T;
T=freopen("
a.txt"
"
r"
stdin);
while(scanf("
%s%s%s%s"
S[cnt].number,S[cnt].name,S[cnt].tel,S[cnt].QQ)!
=EOF){
//printf("
%s%s%sjiji\n"
S[cnt].number,S[cnt].name,S[cnt].tel,S[cnt].QQ);
cnt++;
}
freopen("
CON"
"
stdin);
printf("
建立成功\n"
);
}
voidshowscreem()
*******************************************************************************\n"
1通讯录的建立\n"
2.插入通讯记录\n"
3.查询通讯记录\n"
4.删除通讯记录\n"
5.显示通讯记录\n"
0.退出系统\n"
voidInsert()
Studentt;
scanf("
t.number,t.name,t.tel,t.QQ);
S[cnt++]=t;
插入成功\n"
voidFind()
charstr[100];
请输入有关信息\n"
%s"
str);
intflag1=0;
for(inti=0;
i<
cnt;
i++){
intflag=0;
flag|=!
strcmp(str,S[i].number);
strcmp(str,S[i].name);
strcmp(str,S[i].tel);
strcmp(str,S[i].QQ);
if(flag){
学号%s姓名%s电话%s邮箱%s\n"
S[i].number,S[i].name,S[i].tel,S[i].QQ);
flag1=1;
if(!
flag1)printf("
没找到\n"
voidDelete()
intpos;
pos=i;
break;
flag)printf("
else{
删除成功\n"
for(inti=pos;
cnt-1;
i++)S[i]=S[i+1];
cnt--;
intcmp(constStudent&
a,constStudent&
b)
returnstrcmp(a.number,b.number)<
0;
intcmp1(constStudent&
returnstrcmp(a.name,b.name)<
intcmp2(constStudent&
returnstrcmp(a.tel,b.tel)<
voidshow()
按照学号排序\n"
sort(S,S+cnt,cmp);
姓名%s学号%s电话%s邮箱%s\n"
S[i].name,S[i].number,S[i].tel,S[i].QQ);
按照姓名排序\n"
sort(S,S+cnt,cmp1);
按照电话排序\n"
sort(S,S+cnt,cmp2);
intmain()
intn;
showscreem();
%d"
&
n)!
if(n==0)break;
if(n==1)init();
elseif(n==2){
请按顺序输入学号,姓名,邮箱\n"
Insert();
elseif(n==3){
Find();
elseif(n==4){
Delete();
elseif(n==5){
show();
return0;
总结:
本系统可以通过删除和插入的操作方式完成数据的修改;
但没有直接修改数据的功能。
进入系统后,随即显示系统主菜单界面,用户可以在该界面下输入各子菜单前对应的数字并按回车键,执行相应的子菜单命令。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 通讯录 管理 系统 设计 实现