QQ好友管理系统(顺序表实现)----插入
数据结构中,主要讲解的是典型的数据结构:线性表,树与二叉树,图等的存储及基本操作。
本次课程设计的题目是QQ好友管理系统,是关于对QQ好友信息管理来设计的一个系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成QQ好友信息管理的全过程,包括创建QQ好友基本信息、查QQ好友基本信息、修改QQ好友信息、插入新加入QQ好友的信息、按照年龄、昵称首字母等进行排序以及统计QQ好友信息等主要功能。
本文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点说明了系统的设计思路、总体设计、各个功能模块的设计与实现方法。
1、需求分析    1
1.1 数据需求分析    1
1.2 功能需求分析    1
2、系统总体设计    2
2.1 系统模块划分    2
.2 .2系统模块结构图    3
3 详细设计及实现    4
3.1 系统封面设计    4
3.2创建模块    4
3.3输出模块    5
3.4查模块    5
3.5修改模块    5
3.6删除模块    6
3.7插入模块    6
3.8 排序模块    7
4 系统连编与运行    8
5、总结    8

1、需求分析
随着科技的不断发展,QQ成了人们联系交流的主要工具,QQ也拓宽了我们认识新朋友的通道,使我们可以认识来自世界各地的朋友,因此我们就需要对QQ好友进行信息管理,以便于我们对他们进行查、通讯等主要功能,在这种情况下单靠人工来处理QQ好友信息不但显得力不从心,而且极容易出错。因此,需要开发QQ好友信息管理系统,该系统可以实现计算机代替人工来管理QQ好友的基本信息,我们自己需要输入关键字即可查好友,使得我们可以轻松快捷管理QQ好友信息。
1.1 数据需求分析
本系统的主要数据是QQ好友的基本信息。QQ好友信息包括:QQ号,QQ昵称,性别,年龄、分组、备注、生日、电话号码、QQ年龄等。
1.2 功能需求分析
本系统主要实现对QQ好友基本信息进行管理,需要实现以下几个方面的管理功能:
(1)创建QQ好友基本信息:录入QQ好友的信息。
(2)输出QQ好友基本信息:输出好友的信息。
(3)QQ好友信息:按QQ号、备注查。
(4)更新QQ好友信息:按照QQ号、备注更新。
(5)插入QQ好友信息:插入一个新的QQ好友。
(6)删除QQ好友:按照QQ号删除。排序学生成绩信息:按照年龄、昵称首字母以及Q
进行排序。
2、系统总体设计
2.1 系统模块划分
本系统主要是QQ好友基本信息的管理,包括了有关QQ好友基本信息的创建、输出、查询、更新、插入、删除、排序等功能。整个系统分为以下几个模块。
1、欢迎界面模块
本模块提供欢迎界面的信息输出模式。
2、主系统界面模块
本模块提供QQ好友信息管理系统的主菜单界面,供管理员选择与执行各项成绩信息管理工作。
3、创建模块
本模块用于创建入库QQ好友的信息,包括QQ好友的QQ号,QQ昵称,性别,年龄、分组、备注、生日、电话号码、QQ年龄等。
4、查询模块
本模块用于查询QQ好友信息,按QQ号或备注查询等。
5、修改模块
本模块用于根据输入要查询的QQ号来修改其相应的信息。
6、删除模块
本模块用于根据QQ号以及备注来删除QQ好友。
7、输出模块
本模块主要用于输出库中QQ好友的信息。
8、排序模块
本模块将QQ好友按照年龄以及昵称首字母进行排序。
2 .2系统模块结构图
根据系统功能设计,对应的系统模块结构图如图2.1所示:
2.1系统模块结构图
输出信息
查好友
修改信息
添加好友
显示位置
删除好友
更新模块
查模块
输出模块
QQ好友信息管理系统

3 详细设计及实现
3.1 系统封面设计
登陆界面,起到对登入该系统的人一个提示的作用,结果如图所示:
3.2 创建模块
本模块主要写入QQ好友的基本信息,结果如下图所示:
3.3 输出模块
本模块主要是把写入QQ好友的信息输出来,以便于管理员查看管理,结果如下图:
3.4 查模块
本模块是根据一定的信息对QQ好友进行查,本设计是根据QQ号以及备注进行查,结果如下图:
3.5修改模块
本模块是对QQ好友的信息进行实时更新,以便于我们对QQ好友基本信息的了解,结果如下图所示:
3.6删除模块
此模块是删除一些不经常联系或者好友已经不用的QQ号,结果如下图所示:
删除前:
 
删除后:
3.7插入模块
本模块是为了添加新的好友,结果如图所示:
程序如下:
friends insert(friends L)
{ int n,x;
printf("请输入该好友的QQhaoqq好友查询\n");
scanf("%d",&n);
x=isnu(L,n);
if(x>0)
{ L.data[x].QQhao=n;
printf("请输入学生的基本信息\n");
printf("请输入昵称\n");
scanf("%s",L.data[x].nickname);
printf("请输入性别\n");
scanf("%s",L.data[x].sex);
printf("请输入年龄\n");
scanf("%d",&L.data[x].age);
printf("请输入生日\n");
scanf("%s",L.data[x].birthday);
printf("请输入分组\n");
scanf("%s",L.data[x].group);
printf("请输入备注\n");
scanf("%s",L.data[x].remark);
printf("请输入电话号码\n");
scanf("%s",L.data[x].PhoneNumber);
printf("QQ年龄\n");
scanf("%d" ,&L.data[x].QQage);
L.len++;
}
else
printf("请重新输入该学生的QQ号:\n");
return L;
3.8 排序模块
本模块是对QQ好友的显示位置进行排序,截图如下:

4系统连编与运行
一个应用系统设计和创建完成后,还必须进行连编,以便生成一个可执行文件供最终用户使用。连编完成后还要运行,以检查整个系统的完整性和准确性,同时还可增加程序代码的保密性。
5、总结
本设计基本上实现了课程设计任务书上的的两大功能:QQ好友的查与更新,并达到操作过程中的直观、方便、实用、安全等要求。系统采用模块化程序设计的方法,既便于系统功能的组合和修改,又便于未参与系统开发的技术维护人员补充和维护。
本系统经过测试,证明其运行是稳定、可靠的。但在系统设计中也也遇到很多的问题,并且本系统的功能还需要不断的完善和改进,在以后空闲时间里逐一进行完善,使系统功能更加完善,使本软件能够更好的为大中型企业服务,创造更大的社会价值。
在即将完成之际,我谨代表自己想一直以来关心帮助我的指导老师***老师致以中心的感谢以及崇高的敬意!***老师作为一名优秀的指导教师,不仅具有丰富的理论知识和实践经验,更能贴近学生生活,在整个课程设计的进行过程中,我也遇到过诸多细碎的问题,然而无论是专业,亦或是格式上的问题,我都能在第一时间得到***老师的指导。正是在***老师的细细指导下,方才能够完成,老师以其渊博的学识、严谨的治学态度、求实的工作作风给我留下了深刻的印象。
参考文献
[1] 谭浩强.C程序设计[M].北京:清华大学出版社. 2005
[2] 代文征。数据化结构项目化教程