C++课程设计报告Word格式文档下载.docx

上传人:b****3 文档编号:15064843 上传时间:2022-10-27 格式:DOCX 页数:12 大小:61.30KB
下载 相关 举报
C++课程设计报告Word格式文档下载.docx_第1页
第1页 / 共12页
C++课程设计报告Word格式文档下载.docx_第2页
第2页 / 共12页
C++课程设计报告Word格式文档下载.docx_第3页
第3页 / 共12页
C++课程设计报告Word格式文档下载.docx_第4页
第4页 / 共12页
C++课程设计报告Word格式文档下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

C++课程设计报告Word格式文档下载.docx

《C++课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C++课程设计报告Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。

C++课程设计报告Word格式文档下载.docx

目录

1课题目标

程序基本功能:

一个基本的电话簿管理程序,具有插入、删除、显示、修改和查询联系人电话号码的功能。

课程设计要求:

(1)增加记录修改功能(姓名和电话号码)。

(2)增加显示功能(对链表提供逐屏显示选择而且可以由用户确定每屏显示数目)。

(3)汉化菜单和帮助。

(4)程序的结构改写,采用双链表结构,用类和对象重建系统。

评定难易级别:

A级

2程序具体实现原理

2.1总体方案

(1)程序采用双向链表数据结构实现。

(2)用类来实现数据的封装。

(3)使用文件的输入输出流实现对记录的保存与读取。

2.1.1开发平台

操作系统:

Win7

开发软件:

MirosoftVisualC++6.0

2.1.2基本原理

2.2程序各个功能说明

2.2.1程序结构

1.类的封装:

classFriend_node

{

public:

charname[35];

charphone_number[15];

Friend_node*next;

voidwrite_list_to_file();

voidload_list_from_file();

voidadd_record();

voiddelete_record();

voidchange_record();

voidadd_change_record(Friend_node*new_record_ptr);

voidsearch_record();

voiddisplay_all_records();

voidhelp();

voidmain_menu();

voidhelp_menu();

voidinsert_node(Friend_node*new_record_ptr);

voidmake_node_new_head(Friend_node*new_record_ptr);

voidadd_node_to_end(Friend_node*new_record_ptr);

voidmove_current_to_end();

voiddelete_node(Friend_node*previous_ptr);

voiddelete_head_of_list();

voiddelete_end_of_list(Friend_node*previous_ptr);

voiddelete_from_middle_of_list(Friend_node*previous_ptr);

intverify_delete();

voiddelete_list();

};

2.2.2课程设计要求的实现

1.用类Friend_node重建系统;

2.增加了函数change_record()用于修改联系人资料,利用了原来的删除功能delete_record()和添加功能add_record()进行对原有资料的修改;

//修改联系人资料//

voidFriend_node:

:

add_change_record(Friend_node*new_record_ptr)

Friend_node*previous_ptr;

previous_ptr=NULL;

delete_node(previous_ptr);

cout<

<

"

输入新姓名:

endl;

cin>

>

new_record_ptr->

name;

输入新电话号码:

phone_number;

insert_node(new_record_ptr);

}

change_record()

Friend_node*new_record_ptr;

new_record_ptr=newFriend_node;

system("

cls"

);

charsearch_string[35];

current_ptr=head_ptr;

输入你想要修改的联系人姓名:

search_string;

while((current_ptr!

=NULL)&

&

(strcmp(current_ptr->

name,search_string)!

=0))

{

current_ptr=current_ptr->

next;

}

if(current_ptr!

=NULL)

cout<

\n找到联系人!

\n"

;

姓名"

"

联系电话"

****************************************"

current_ptr->

name<

phone_number<

add_change_record(new_record_ptr);

else

联系人不存在"

按下回车键回到主菜单"

getchar();

main_menu();

3.在原有的显示功能的基础上添加了一个计数器person_count来实现逐屏显示的功能并可以设定显示数目;

//显示联系人//

display_all_records()

intperson_count;

inttemp_person_count=0;

charfullname[36];

每屏显示多少联系人?

person_count;

display:

********************************************"

for(temp_person_count=0;

current_ptr!

=NULL&

temp_person_count<

{

temp_person_count++;

strcpy(fullname,"

strcat(fullname,current_ptr->

name);

cout.setf(ios:

left);

cout<

setw(12)<

fullname;

cout.unsetf(ios:

right);

setw(24)<

current_ptr=current_ptr->

}

for(;

=NULL;

按下回车键进入下一页"

getchar();

system("

gotodisplay;

没有联系人!

4.菜单和帮助的汉化;

//主菜单//

main_menu()

main_menu:

intchoice;

********************主菜单********************"

**********************************************"

1-添加联系人;

2-删除联系人;

3-修改联系人资料;

4-显示所有联系人;

5-按姓名查找联系人;

6-帮助;

7-保存记录并退出程序。

请输入你想要执行的选项:

choice;

switch(choice)

case1:

system("

add_record();

break;

case2:

delete_record();

case3:

change_record();

case4:

display_all_records();

case5:

search_record();

case6:

help_menu();

case7:

write_list_to_file();

if(head_ptr!

delete_list();

default:

错误的选项!

getchar();

gotomain_menu;

//帮助//

help_menu()

help:

1-我的记录呢?

2-怎样可以清空记录?

3-什么时候会有新版本?

4-新版本会有些什么功能?

5-返回主菜单。

在当前目录下找到一个名为“Friends.dat”的文件。

如果找不到该文件可能是因为该文件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1