数据结构课程设计之通讯录管理系统Word文档格式.docx
《数据结构课程设计之通讯录管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计之通讯录管理系统Word文档格式.docx(37页珍藏版)》请在冰豆网上搜索。
(1)查询信息界面:
(2)新增信息界面:
(3)修改信息界面:
七、使用说明
添加:
根据提示添加通讯记录
显示:
显示所有联系人的信息
输入要保存联系人的信息保存到文件中,并可选择继续输入或退出。
显示通讯录中的所有联系人;
若无联系人,则显示通讯录中无记录。
删除:
输入要删除人的名字,系统会自动删除他的信息;
若无此联系人,则显示无此联系人。
修改:
输入要修改人的名字,根据提示修改信息;
修改完后显示修改成功。
查询:
输入要想查询人的名字就会显出他的所有所有信息;
若无此联系人,则显示无此人。
附录:
显示备忘录,提醒今天要做的事。
关闭:
使用结束关闭通讯录4、查询学生信息:
用来根据信息内容,查询该信息联系人姓名及其他相关信息。
综上所述,此通讯簿的要求如下:
1每个用户都有自己的密码,确保通讯簿资料安全;
2可以根据用户的需求进行分组的添加和删除;
3联系人资料应齐全,包括地址、邮编、电子邮箱等,并且可以进行增、删、改、查;
可以设置联系人的头像
八、总体设计分析
系统功能模块图:
可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。
可以以表格形式输出所有通讯录里的记录
输入欲删除的那个人的名字后,会自动删除他(她)的记录内容
可以选择用姓名、电话、地址三种方式查询
输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改
保存:
,输入文件名(带后缀名)后,即可将通讯录信息保存到文件
九、总结
课程设计是培养我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,高级语言已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。
因此作为二十一世纪的大学来说掌握高级语言是十分重要的。
回顾起此次高级语言课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能论到实践,在整整三星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。
通过这次课程设计让我看到了高级语言课程设计的博大精深,在设计过程中虽然遇见了很多问题,但当我看到自己设计的程序能够运行时心里无比喜悦,充满了成绩感,并且也增加了我学计算机的兴趣!
在设计中发现了自己的许多不足,在学习中的许多问题都暴露出来了。
原来感觉学的不错的知识现在用起来却很模糊,而以前没有掌握的现在依人不懂。
通过这次课程设计给了我很大的教训,在以后的学习中遇到不懂的不会的一定要当场解决,掌握了的知识也要随时巩固,不要觉得自己已经懂了就不在看它。
这次课程设计告诉了我学习知识一定要巩固,尤其是在似懂非懂的情况下一定要好好研究,而不是放弃不学,这样不懂得就会越堆越多。
通过这次编程也告诉了我一个问题不仅只有一种方法可以解决,我们要学会从不同角度思考探究解决问题的不同方法,让我们的头脑变得更加灵活。
整个设计通过了软件和硬件上的调试。
我想这对于自己以后的学习和工作都会有很大的帮助。
在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理
解,而且要不断地更正以前的错误思维。
一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。
对于教材管理系统,其程序是比较简单的,主要是解决程序设计中的问题,而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。
因此在整个设计过程中大部分时间是用在程序上面的。
很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。
因此可以说系统的设计是软件和硬件的结合,二者是密不可分的。
通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。
课程设计让我对高级语言课程设计有了进一步的了解,也对他产生了浓厚的兴趣,虽然自己有很多不足,但我坚信这次的课程设计也许在以后的学习和生活中会有很大的用处,所以不管遇到什么困难我都会努力学习高级语言课程设计,让自己的头脑变得更加丰富!
在这次课程设计中也非常感谢老师和同学们的帮助,让我知道了该怎么做一份正确的课程设计报告,为今后的的课程设计奠定了巩固的基础。
十、源代码
packagecom.qilu.chencongcong.home3;
importjava.util.Scanner;
publicclassZhuJieMian{
/**
*
*该类为通讯录系统的主界面提供主要功能显示,以及负责主菜单与子菜单的正常跳转
*/
publicstaticvoidmain(String[]args)
{
//TODOAuto-generatedmethodstub
//XueShengXinXi[]Stu=ChuShiHua();
//初始化系统数据
XueShengXinXi[]Stu=newXueShengXinXi[100];
Stu[0]=newXueShengXinXi("
专业"
"
班级"
姓名"
性别"
电话"
家庭住址"
);
Stu[1]=newXueShengXinXi("
自动化"
自动化10-1"
张三"
男"
63256"
fnhjfdhsdbh"
Stu[2]=newXueShengXinXi("
自动化10-2"
李四"
女"
653256"
nfhggdfddhsdbh"
Stu[3]=newXueShengXinXi("
电子"
电子10-1"
王五"
6156"
fnhvjbh"
Stu[4]=newXueShengXinXi("
电子10-2"
小红"
63956"
asdfnhjbh"
Stu[5]=newXueShengXinXi("
网络"
网络10-1"
小明"
656"
nfgdgfnhjbh"
Stu[6]=newXueShengXinXi("
网络10-2"
小芳"
62215"
nfgdmmmdfhbdsh"
Stu[7]=newXueShengXinXi("
计算机"
计科高职12-2班"
隋玉聪"
615129"
bbbdddfnhjbh"
Stu[8]=newXueShengXinXi("
穆明国"
615272"
mjgfddddfnhjbh"
Stu[9]=newXueShengXinXi("
测控"
测控10-1"
赵小斌"
644814"
fthnrehbkjhjbh"
Stu[10]=newXueShengXinXi("
测控10-2"
钱颖"
63641"
dbfsvnnhjbh"
Stu[11]=newXueShengXinXi("
电信"
电信10-1"
孙武"
6321514"
mmhmgvvdfnhjbh"
Stu[12]=newXueShengXinXi("
电信10-2"
李雨"
6314"
43ghffvvdfnhjbh"
for(intx=13;
x<
Stu.length;
x++)
{
Stu[x]=newXueShengXinXi();
}
System.out.println("
****************欢迎使用通讯录系统!
******************"
ZhuJieMian:
for(intexit=0;
exit==0;
)//exit为退出主菜单的指示变量,0为不退出,非0为退出
System.out.println();
System.out.println("
主菜单"
System.out.print("
1.查询学生信息\t\t"
2.新增学生信息"
3.修改学生信息\t\t"
4.删除学生信息"
5.恢复已被删除信息\t\t"
"
请选择你要操作的功能序号:
"
Scannerscn_input=newScanner(System.in);
StringXuHao=scn_input.next();
if(XuHao.equals("
1"
))//二级菜单——查询学生信息
{
select:
for(intexit2=0;
exit2==0;
){
//exit为退出二级菜单的指示变量,0为不退出,非0为退出
System.out.println("
************************二级菜单——查询学生信息************************"
System.out.println();
System.out.print("
请输入要查找的关键字(包括专业,班级,姓名等等),输入“all”显示全部信息,输入“back”返回主菜单:
Stringstr_KeyWord=scn_input.next();
if(str_KeyWord.equals("
all"
))
{
System.out.println();
System.out.println("
************************学生通讯录信息************************"
XueShengXinXi.Show(Stu);
continueselect;
}
elseif(str_KeyWord.equals("
back"
continueZhuJieMian;
else
int[]index=XueShengXinXi.Select(str_KeyWord,Stu);
if(index[0]==0)
{
System.out.println("
抱歉,没有找到关于“"
+str_KeyWord+"
”的学生信息!
System.out.println();
continueselect;
}
else
XueShengXinXi.Show(Stu,index);
}
}
elseif(XuHao.equals("
2"
)){
//二级菜单——新增学生信息
insert:
for(intexit3=0;
exit3==0;
************************二级菜单——新增学生信息************************"
请按右边的格式输入新增学生的专业/班级/姓名/性别/电话/地址信息(前3项信息必填),输入“back”返回主菜单:
Stringstr_Stu=scn_input.next();
if(str_Stu.equals("
输入有误,请重新输入!
continueinsert;
elseif(str_Stu.equals("
}else{
booleanzuoFei=XueShengXinXi.Insert(Stu,str_Stu);
if(zuoFei==true){
由于学生信息必填项信息缺失,所以新增失败。
返回至二级菜单..."
continueinsert;
}else{
新增成功!
//exit3=1;
3"
//二级菜单——修改学生信息
System.out.println("
************************二级菜单——修改学生信息************************"
System.out.println();
XueShengXinXi.Show(Stu);
//System.out.println();
update:
for(intexit4=0;
exit4==0;
请输入要修改的学生前的序号(每次只能输入一个),输入“back”返回主菜单:
Stringstr_XuHao=scn_input.next();
if(str_XuHao.equals("
int[]id=XueShengXinXi.Str_Int(Stu,str_XuHao,false);
if(id[0]<
Stu.length&
id[0]!
=0){
//intindex=XueShengXinXi.Select_index(Stu,id[0]);
该学生信息如下:
System.out.print(Stu[id[0]].str_ZhuanYe+"
/"
+Stu[id[0]].str_BanJi+"
System.out.print(Stu[id[0]].str_XingMing+"
+Stu[id[0]].str_XingBie+"
System.out.println(Stu[id[0]].str_DianHua+"
+Stu[id[0]].str_DiZhi);
请按以上格式输入修改后的信息(某一项无修改的话,则不用输入):
Stringstr_Stu=scn_input.next();
XueShengXinXi.Update(Stu[id[0]],str_Stu);
修改成功!
已返回二级菜单"
XueShengXinXi.Show(Stu);
continueupdate;
输入有误!
已返回至二级菜单"
//exit4=1;
4"
)){
//二级菜单——删除学生信息
************************二级菜单——删除学生信息************************"
delete:
for(intexit5=0;
exit5==0;
)//exit为退出二级菜单的指示变量,0为不退出,非0为退出
{
//System.out.println("
************二级菜单——删除学生信息************"
请输入要删除的学生信息前的序号(输入多个序号时用/隔开),输入“all”删除全部信息,输入“back”返回主菜单:
Stringstr_xuHao=scn_input.next();
if(str_xuHao.equals("
}elseif(str_xuHao.equals("
XueShengXinXi.Delete_All(Stu);
全部数据已被删除,已返回主菜单。
。
//XueShengXinXi.Show(Stu);
int[]id=XueShengXinXi.Str_Int(Stu,str_xuHao,false);
Stu.length){
//System.out.println();
XueShengXinXi.Delete_index(Stu,id);
//System.out.println("
删除成功!
************************二级菜单——删除学生信息*************