课程设计
QQ好友管理系统
课程设计名称数据结构课程设计
小组成员王守锋石松轶陆永斌张智斌李浩明
计算机应用技术专业课程设计任务书
0
1
目录
1需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
2概要设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
3详细设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
4运行环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
5开发工具和编程语言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
6程序设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
7调试分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
8测试结果. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
9参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
10心得体会. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
11成绩评价表. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
2
1需求分析
QQ的普及度越来越高其功能也需要加强。将通讯录的功能添加到QQ好友管理系统中使其在聊天中就可以呼叫联系人并且将通讯录的信息可以QQ中长期保存在无手机的情况下也查找好友手机号。从而使QQ功能更加完善使用起来更加方便和快捷。
2概要设计
1实现功能
友
友统息友
2序中各函数程简单说明见下
返回值函数名参数表函数说明提供客户intmainvoid主函数是voidmenuvoid显示功能是intreadsHaoyoustu[N]读取否voidsavehaoyoustu[N] ,n保存是voidaddvoid添加是voiddelvoid删除否voidqueryvoid查找是voidchangvoid修改否voidshowvoid信息显示是
WORD格式
3
专业资料整理
3对程序中的各个函数功能的描述
[1]主函数main
系统开始、结束界面的显示、各个功能函数的调用、转换以及参数的传递、定义QQ头结点并传递给各个功能函数
[2]功能显示menu
介绍程序的功能按那些键实现其特点功能。
[3]读取函数reads
读取用户输入的信息将其按线性表的形式呢存储
联系人的编号为其头结点。
[4]保存函数save
将输入的信息保存若失败返回保持失败。
[5]添加联系人函数add
增加联系人到QQ通讯录的尾部返回增加是否成功。
[6]删除函数del
按照用户指定的联系人编号删除相应联系人信息返回删除是否成功。
[7]查找函数query
按照用户提供的联系人姓名查找第一个合法姓名对应的信息查找成功则显示信息失败则提示无此联系人返回是否查找到。
[8]修改函数chang
按照用户提供的联系人姓名修改联系人所有信息返回修改是否成功。
[9]显示信息函数show
显示当前通讯录中所有联系人的信息若为空通讯录则显示无联
系人。
4
3详细设计
4运行环境
1)软件环境
操作系统 Windows7,Windows8
2)硬件环境
处理器 IntelPentium166MX或更高
内存 32MB以上
硬盘空间 1GB以上
显卡 SVGA显示适配
5
5开发工具和编程语言
MicrosoftvisualC++
C语言
6程序设计
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include"conio.h"/*conio.h主要做图形图像例如说设置背景色的函数字体颜色的函数、输出格式的函数等*/
#defineN30typedefstructhaoyou/*typedef是类型定义的意思。 typedefstruct是为了使用这个结构体方便。具体区别在于:若structnode{}这样来定义结构体的话。在申请node的变量时需要这样写 structnoden;若用typedef可以这样写 typedefstructno de{}NODE; 。在申请变量时就可以这样写 NODEn;区别就在于使用时是否可以省去struct这个关键字*/
{charnum[20] ;charname[10] ;charadress[50] ;charQQ[15] ;chartel[15] ;
}haoyou;vo i dmenu() ;intreads(haoyoustu[N] ) ;//读取voidsave(haoyoustu[N] , intn) ;//保存voidadd() ;//添加voiddel() ;//删除voidquery() ;//查询voidchange() ;//修改voidshow() ;//信息显示voidmain()
{intn;while(1)/*while(1)其中1代表一个常量表达式他永远不会等于0。所以循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止*/
{
6
menu() ;
→→→→→→printf("您现在看到的是QQ中的通讯录\n") ;
←←←←←←
→→→→→→printf("请输入您要选择的操作编号按回车键确认 \n") ;
←←←←←←scanf("%d",&n) ;switch(n)
{case1 :add() ;break;case2:show() ;break;case3:del () ;break;case4:change() ;break;case5:query() ;break;case0:exit(0) ;default:printf("***********************************\n") ;printf("输入错误请输入列表中存在的编号\n") ;printf("***********************************\n") ;
}printf("*************\n") ;printf("按任意键返回\n") ;printf("*************\n") ;getch() ;/*getch() ;或ch=getch() ;用getch() ;会等待你
按下任意键再继续执行下面的语句用ch=getch() ;会等待你按下任意键之后把该键字符所对应的ASCII码赋给ch,再执行下面的语句。 */
}
}vo i dmenu()
{system("color1f") ;//颜色system("cls") ;//清屏printf("***********xxx好友信息管理系统*******************\n") ;printf("**1添加好友信息**\n") ;printf("**2显示好友信息**\n") ;printf("**3删除好友信息**\n") ;printf("**4更改好友信息**\n") ;printf("**5查询好友信息**\n") ;printf("**0退出**\n") ;printf("*******************************************************\n") ;
}
7
近期联通CUVIP的线路(AS4837线路)非常火热,妮妮云也推出了这类线路的套餐以及优惠,目前到国内优质线路排行大致如下:电信CN2 GIA>联通AS9929>联通AS4837>电信CN2 GT>普通线路,AS4837线路比起前两的优势就是带宽比较大,相对便宜一些,所以大家才能看到这个线路的带宽都非常高。妮妮云互联目前云服务器开放抽奖活动,每天开通前10台享3折优惠,另外...
提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...
tmhhost怎么样?tmhhost正在搞暑假大促销活动,全部是高端线路VPS,现在直接季付8折优惠,活动截止时间是8月31日。可选机房及线路有美国洛杉矶cn2 gia+200G高防、洛杉矶三网CN2 GIA、洛杉矶CERA机房CN2 GIA,日本软银(100M带宽)、香港BGP直连200M带宽、香港三网CN2 GIA、韩国双向CN2。点击进入:tmhhost官方网站地址tmhhost优惠码:Tm...