c课程设计通讯录管理系统》

合集下载

C课程设计(通讯录管理系统)

C课程设计(通讯录管理系统)

people[j] = temp;
}
}
cout << "排序完成!" << endl;
for (w = 0; w < num; w++)
exit(1);
}
else
{
for (int i = 0; i < num; i++)
{
infile >> name1 >> phone1 >> address1 >> remark1;
people[i].set(name1, phone1, address1, remark1);
}
infile.close();
}case 2:
break;
整理ppt
11
for (w = 0; w < num - 1; w++)
for (j = w + 1; j < num; j++)
{
if (people[w].get_name() <
people[j].get_name())
{
temp = people[w];
people[w] = people[j];
{
cout << "按姓名排序:" << endl;
cout << "请选择排序方式:(1:顺序排序, 2 : 逆序排序)" << endl;
cin >> b;
switch (b)
{
case 1:
{
for (w = 0; w < num - 1; w++)

C课程设计(通讯录管理系统)

C课程设计(通讯录管理系统)
} break;
for (j = w + 1; j < num; j++) {
if (people[w].get_name() <
{
} } cout << "排序完成!" << endl; for (w = 0; w < num; w++) people[w].show(); break;
cout << "按姓名排序:" << endl; cout << "请选择排序方式:(1:顺序排序, 2 : 逆序排序)" << endl; cin >> b; switch (b) { case 1: {
for (w = 0; w < num - 1; w++) for (j = w + 1; j < num; j++) { if (people[w].get_name() > people[j].get_name()) { temp = people[w]; people[w] = people[j]; people[j] = temp; } }
class People { public:
People() {} People(string n, string p, string add, string re) ; ~People() {} void set(string n, string p, string add, string re); void set_name(string n); void set_phone(string p); void set_address(string add); void set_remarks(string re); string get_name(); string get_phone(); string get_address(); string get_remark(); void show();

C课程设计(通讯录管理系统)

C课程设计(通讯录管理系统)
cout << "按姓名排序:" << endl; cout << "请选择排序方式:(1:顺序排序, 2 : 逆序排序)" << endl; cin >> b; switch (b) { case 1: {
for (w = 0; w < num - 1; w++) for (j = w + 1; j < num; j++) { if (people[w].get_name() > people[j].get_name()) { temp = people[w]; people[w] = people[j]; people[j] = temp; } }
people[w] = people[j];
people[j] = temp;
}
}
cout << "排序完成!" << endl;
for (w = 0; w < num; w++)
people[w].show();
break;
}
default: break;}
break;
}
case 3:
break;
outfile << setw(10) << people[i].get_name() << setw(15) << people[i].get_phone() << setw(15) << people[i].get_address() << setw(15) << people[i].get_remark() << endl;

c语言课程设计通讯录管理系统

c语言课程设计通讯录管理系统

c语言课程设计 通讯录管理系统一、课程目标知识目标:1. 理解C语言中结构体的概念和使用方法,掌握利用结构体创建复杂数据结构的能力;2. 学会使用数组存储结构体数据,实现对通讯录信息的有效管理;3. 掌握基本的文件操作,能够实现通讯录数据的存储和读取。

技能目标:1. 能够运用结构体和数组设计并实现一个简单的通讯录管理系统;2. 掌握在C语言中进行简单的输入输出操作,实现用户界面的友好交互;3. 学会使用调试工具进行程序调试,提高解决问题的能力。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发其主动探索和创新的欲望;2. 培养学生的团队协作意识,学会在项目开发中与他人合作;3. 引导学生关注信息技术在生活中的应用,认识到编程对解决实际问题的重要性。

课程性质:本课程为实践性较强的课程,要求学生在掌握C语言基础知识的基础上,运用所学知识设计并实现一个通讯录管理系统。

学生特点:学生具备一定的C语言基础,对编程有一定的兴趣,但可能缺乏实际项目经验。

教学要求:通过本课程的学习,使学生能够将所学知识应用于实际项目中,提高其编程能力和解决实际问题的能力。

将课程目标分解为具体的学习成果,以便在教学过程中进行有效指导和评估。

二、教学内容1. 结构体和结构体数组的概念及应用- 课本章节:第五章 结构体与共用体- 内容:结构体的定义、结构体成员的访问、结构体数组的创建与使用。

2. 文件操作基础- 课本章节:第六章 文件- 内容:文件的打开与关闭、文件的读写操作、文件的定位。

3. 通讯录管理系统设计- 内容:系统需求分析、功能模块划分、系统设计、实现与测试。

4. 用户界面设计- 内容:菜单设计、命令行用户输入输出、简单的人机交互流程。

5. 项目实践与团队协作- 内容:项目分组、任务分配、代码共享与协作、项目评审。

教学进度安排:第一周:复习结构体和结构体数组相关知识,讲解通讯录管理系统需求。

第二周:学习文件操作基础,设计通讯录数据存储与读取功能。

C语言课程设计-通讯录管理系统.

C语言课程设计-通讯录管理系统.

《C语言课程设计》课程设计报告题目通讯录管理系统学号姓名年级专业指导教师完成日期年月日安徽师范大学物理与电子信息学院College of Physics and Electronic Information, Anhui Normal University通讯录管理系统一、问题描述本程序是非数值计算型算法设计,我设计出了通讯录管理系统的基本功能,并设计了简单的界面。

本程序主要考察对自定义函数的熟悉程度,本程序主要使用的是数组的相关操作,包括结构体数组的输入、输出、查找、删除等。

我设计的这个通讯录系统也初步实现了人员信息的显示、删除、查找、修改、添加等必要的功能。

二、基本要求1)每条记录包括:学号、姓名、专业、家庭住址、联系电话;2)能够实现添加、删除、修改功能;3)能够实现按学号、姓名、专业等内容进行查找三、系统分析和设计【需求分析】根据题目要求,通讯录数据以文本文件存储,故应提供文件的输入、输出等操作;还应提供显示、查找、删除等操作;另外还应提供键盘式选择菜单实现功能选择。

【总体设计】通过对整个系统的分析,根据上述要求,可以将这个系统的设计分为三个模块(见图1):文件导入、通讯录编辑和退出。

图1 系统功能模块四、主要流程图(1)主菜单函数此函数功能为提供键盘式选择菜单以调用不同函数。

其流程如图2所示。

图2 主菜单函数流程图(2) 新建菜单函数该函数的功能是用户需要新建联系人记录,从键盘输入并逐条写到原来的通讯录文件中,注意采用新建而不是覆盖的方式。

其流程如图3所示。

图3 新建函数流程图(3) 浏览菜单函数此函数功能为提供浏览所有联系人记录。

其流程如图4所示。

图4 浏览模块流程图(4)查找菜单函数此模块的功能是用户可根据姓名或电话号码查询联系人信息。

△查询菜单函数功能为提供键盘式选择菜单选择查找方法。

其流程如图5所示。

图5 查找函数流程图△按姓名查找函数其流程如图6 所示。

图6 按姓名查找函数流程图△按电话查找函数其流程如图7所示。

c语言课程设计报告---通讯录管理系统

c语言课程设计报告---通讯录管理系统

一、实习题目通讯录管理系统二、需求分析问题描述:本程序属于非数值计算型算法设计,学生需要设计出图书馆模拟系统所需要的基本功能,并设计简单的界面(无需图形化)。

实现功能:1、通过提示菜单选择可以进行的操作2、将图书的信息存入文件中,并命名为BookInfo.txt3、将图书借阅情况信息存入文件中,并命名为SendInfo.txt4、在本系统中可以进行管理系统包含的基本操作,其中包括:a)查看所有图书的信息;b)输入一本图书的图书编号,从当前图书中进行查找,如果找到则显示该图书的相关信息,如果没有找到则给出提示信息;c)添加一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则提示重新输入,否则将该图书按照顺序插入到相应位置;d)删除一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则将该图书删除,否则给出提示信息,提示该图书不存在;e)借阅一本图书,需要给出学号和图书编号,如果图书编号不存在则重新输入,直到输入正确为止,并将学号和相应的图书编号存入SendInfo.txt文件中。

5、图书基本信息包括图书编号、书名、作者、出版社和价钱这些简单信息。

6、图书信息文件中每一行存放一本图书的信息。

7、借阅信息文件中每一行存放一本书的借阅情况。

知识点:本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作,需要对数组有比较深入的掌握。

说明:(1)当程序执行的时候所读取的图书信息文件必须存在,否则可能会出现错误。

(2)图书信息文件中存放图书信息的时候是按照行来存放的,即一行一本书。

(3)借阅信息文件中存放学生借阅情况是按照行来存放的,即一行存放一个学号和一个图书编号。

(4)程序执行的基本过程为:a)在所有操作之前,也就是加载操作菜单之前,先从文件中读取所有图书的信息,并存入一个数组中,此时数组可以定义为包含100个元素;b)然后根据菜单所进行的所有操作都是对当前数组进行操作,此时也就是对数组的查找、定位、添加、修改、删除操作;c)当退出系统的时候再将当前数组中的所有元素按照一本图书一行的方式写回图书信息文件中,此时注意选择覆盖方式,这样就可以将原来的所有数据覆盖,只保留最新的数据;当按行读取图书信息文件的时候,有可能最后一行只有一个回车,这时候实际上所读取的数据为空字符串,需要对此作判断,如果是空字符串,则说明已经没有人员,就必须将当前读入的空字符串写入数组中。

c课程设计通讯录管理系统

c课程设计通讯录管理系统

c 课程设计 通讯录管理系统一、课程目标知识目标:1. 让学生掌握通讯录管理系统的基础知识,包括系统结构、功能模块和数据存储方式。

2. 了解并运用编程语言(如Python)实现通讯录的增、删、改、查功能。

3. 学会运用算法和数据处理技巧优化通讯录管理系统的性能。

技能目标:1. 培养学生运用所学知识独立设计和编写通讯录管理系统的能力。

2. 提高学生的问题解决能力,能够针对实际需求调整和优化系统功能。

3. 培养学生的团队协作能力,学会在项目中进行有效沟通和分工。

情感态度价值观目标:1. 培养学生对信息技术课程的兴趣,激发学习热情。

2. 增强学生的自信心,让他们在完成项目的过程中感受到成就感。

3. 培养学生的责任心,使他们认识到技术对社会发展的积极作用,并关注信息安全问题。

课程性质:本课程为信息技术课程,旨在让学生通过实践操作,掌握通讯录管理系统的设计与实现方法。

学生特点:六年级学生已具备一定的计算机操作基础和编程能力,对新鲜事物充满好奇,喜欢挑战。

教学要求:结合学生特点,注重实践操作,鼓励学生独立思考和团队协作,提高解决问题的能力。

将课程目标分解为具体的学习成果,以便在教学过程中进行有效指导和评估。

二、教学内容1. 系统分析与设计:- 理解通讯录管理系统的需求分析,明确系统功能。

- 学习UML类图、用例图等工具进行系统设计。

2. 数据存储结构:- 掌握使用数组、链表等数据结构存储通讯录信息。

- 分析不同存储结构的优缺点,选择合适的数据结构。

3. 编程语言实现:- 运用Python等编程语言编写系统功能代码。

- 掌握面向对象编程思想,实现类和对象的设计。

4. 功能模块实现:- 实现通讯录的增、删、改、查功能。

- 学习使用异常处理、文件操作等技术解决实际问题。

5. 系统优化:- 分析算法性能,优化查询速度。

- 掌握排序、查找等算法在通讯录管理系统中的应用。

6. 项目实战与团队协作:- 按照教学大纲,分阶段完成通讯录管理系统的开发。

c通讯录管理系统课程设计

c通讯录管理系统课程设计

c 通讯录管理系统课程设计一、教学目标本课程旨在让学生了解和掌握通讯录管理系统的基本概念和设计方法,培养学生的实际动手能力和问题解决能力。

具体目标如下:知识目标:使学生了解通讯录管理系统的基本原理,掌握系统设计的基本流程和方法。

技能目标:培养学生使用编程语言实现通讯录管理系统的能力,提高学生的软件开发技能。

情感态度价值观目标:培养学生对计算机科学和编程的兴趣,激发学生的创新精神和团队合作意识。

二、教学内容本课程的教学内容主要包括以下几个部分:1.通讯录管理系统的基本概念:介绍通讯录管理系统的作用、特点和应用场景。

2.系统设计方法:讲解系统设计的基本流程,包括需求分析、系统设计、编码实现和测试等环节。

3.编程语言实践:通过具体案例,使学生掌握使用编程语言实现通讯录管理系统的方法。

4.团队协作与创新:培养学生在团队协作中解决问题的能力,激发学生的创新精神和团队合作意识。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行教学:1.讲授法:讲解通讯录管理系统的基本概念和设计方法。

2.案例分析法:分析实际案例,使学生更好地理解通讯录管理系统的设计和实现过程。

3.实验法:让学生动手实践,实际操作通讯录管理系统的设计和编程。

4.小组讨论法:鼓励学生进行团队协作,共同解决问题,培养学生的团队合作能力。

四、教学资源为了保证教学效果,我们将提供丰富多样的教学资源:1.教材:选用权威、实用的教材,为学生提供系统、全面的学习资料。

2.参考书:提供相关的参考书籍,丰富学生的知识体系。

3.多媒体资料:制作精美的PPT,生动形象地展示课程内容。

4.实验设备:提供充足的实验设备,确保每个学生都能动手实践。

5.在线资源:推荐相关的在线课程和论坛,方便学生随时随地学习、交流。

五、教学评估为了全面、公正地评估学生的学习成果,本课程将采用多种评估方式相结合的方法:1.平时表现:通过课堂参与、提问、讨论等方式,评估学生的学习态度和积极性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计说明书(论文)课程名称 C++程序设计实践题目通信录管理系统专业软件工程班级学号姓名 xx起止日期指导教师赵新慧成绩辽宁石油化工大学计算机与通信工程学院摘要本次课程设计任务是通过编写一个通信录管理系统,学习用Visual?C++?开发简单的管理系统。

采用Visual?C++?软件为主要开发工具。

巩固和加深学生对C++课程的基本知识的理解和掌握,掌握C++编程和程序调试的基本技能,利用C++进行简单软件设计的基本思路和方法,提高运用C++解决实际问题的能力,掌握书写程序设计说明文档的能力使用计算机进行信息管理。

实现通信录的管理功能(添加、删除、排序)、按姓名查询的功能,以及把联系人资料保存在文件中,将文件中内容读出来。

使用计算机进行系统管理,不仅提高了工作效率,而且大大提高了其安全性,尤其对于复杂的信息管理,计算机能充分地发挥它的优越性,通信录管理系统是每个人不可缺少的部分,在课程设计中,系统开发平台为Windows XP,程序设计语言采用Visual C++,在程序设计中,运用了面向对象解决问题的方法。

程序通过调试运行,初步实现了设计目标。

AbstractThe curriculum design task is through the preparation of a student achievement ranking management system, learning management system with Visual C++ 6 to develop simple. Using Visual C++ 6 software as the main development tool. To consolidate and deepen the students the basic knowledge of C++ course of understanding and master, master the basic skills of C++ programming, the basic idea and method of software design using C++, to improve the ability to use C++ to solve practical problems, to master the ability to write program design use of computer information management. Realization grade management functions (add, delete, sort), statistical functions (the highest score, the lowest score, average score, pass rate), student ID, name, or the name of course query results function, as well as the students' scores are stored in the file. The use of computer management system, not onlyimprove the work efficiency, but also greatly improves the safety, particularly for the complicated information management, computer can give full play toits advantages, student achievement management system is an indispensable part of an education unit, its content but for the policy makers and school managers important. In the curriculum design, system development platform for Windows XP, the programming language using Visual C++, in the program design, using object oriented method to solve the problem. Program by debugging and running, initially to achieve the design goals.目录1设计要求................................................设计题目 .............................................设计目的 .............................................设计内容 ............................................. 2设计原理和技术.......................................... 3模块设计与分析..........................................添加模块 ............................................显示模块 ............................................删除模块 ............................................查询模块 .......................................... 2排序模块 ............................................读入文件模块 ........................................从文件中读出模块 ....................................4 程序源代码 ............................................. 5功能测试................................................添加功能 .............................................显示功能 ............................ 错误!未指定书签。

删除功能 .............................................查询功能 .............................................排序功能 .............................................保存到文件的功能 .....................................从文件中读出模块 ..................................... 6总结.................................................... 参考文献 .................................................1设计要求设计题目通信录管理系统设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《C++程序设计》课程后进行的一次全面的综合练习。

本课程设计的目的和任务:(1)巩固和加深学生对C++课程的基本知识的理解和掌握;(2)掌握C++编程和程序调试的基本技能;(3)利用C++进行简单软件设计的基本思路和方法;(4)提高运用C++解决实际问题的能力;(5)掌握书写程序设计说明文档的能力。

设计内容以本班同学的具体数据为背景,设计一个本班同学通讯录。

实现功能:1)? 通讯录编辑(添加、删除)。

2)? 按不同的项进行查找。

3)? 对已存在的通讯录按不同的项排序。

4)? 将通讯录写入文件5)? 从文件读入通讯录备注:通讯录至少应该有以下数据项:姓名,地址,电话,邮编,E-mail。

2设计原理和技术在课程设计中,系统开发平台为Windows XP,程序设计语言采用Visual C++,在程序设计,采用C++编程语言编写程序,实现各项功能。

3模块设计与分析?添加模块? 主要功能是用来添加联系人资料。

如果系统有保存联系人资料的情况下,想查看的话,可以直接从系统文件中调用输出,在成功添加联系人资料后,就可以对该联系人进行以上的操作。

?显示模块在程序运行中,通过输入相应选择项,把联系人信息显示在屏幕上。

删除模块主要功能是用来删除联系人资料。

在系统保存联系人资料的前提下,想删除某联系人的资料,可以输入该联系人姓名查找该联系人资料后,就可以删除了。

及时对系统进行更新,删除一些没用的信息,可以使系统更加优化?。

查询模块主要功能是用来查找联系人资料。

在系统保存了某联系人资料的前提下,想要查找该联系人资料,可以输入该联系人姓名,这样系统就会显示该联系人资料等信息,若系统中不存在则提示用户该联系人不存在。

?排序模块主要功能是用来对联系人的资料按姓名进行排序。

便于用户在拨打电话时易于查找一些联系人。

读入文件模块?主要功能是用来将联系人资料读入文件中保存起来进行备份,防止以后丢失。

从文件中读出模块主要功能是用来将联系人资料从文件中直接读取到屏幕上,便于查看。

4 程序源代码#include<iostream>#include<fstream>using namespace std;#include<string>#define N 100#define SIZE 20struct student ame<<"\t"<<p[i].tel<<"\t"<<p[i].add<<"\t"<<p[i].pos<<"\t"<<p[i].Email<<endl;return n-1;}elsecout<<"********无此联系人*********"<<endl;}return n;}void search(struct student *p,int n) ame<<"\t"<<p[i].tel<<"\t"<<p[i].add<<"\t"<<p[i].pos<<"\t"<<p[i].Email<<endl;break;}if(i==n)cout<<"********无此联系人*********"<<endl;}}void sort(struct student *p,int n) ame,p[j+1].name)>0){temp=p[j];p[j]=p[j+1];p[j+1]=temp;}}}cout<<"排序后的结果为:"<<endl;cout<<"姓名"<<"\t"<<"电话"<<"\t\t"<<"地址"<<"\t"<<"邮编"<<"\t"<<"邮箱"<<endl;for(i=0;i<n;i++)cout<<p[i].name<<"\t"<<p[i].tel<<"\t"<<p[i].add<<"\t"<<p[i].pos<<"\t"<<p[i].Email<<endl;}}void output_datafile(struct student *p,int n) ame<<"\t"<<p[i].tel<<"\t"<<p[i].add<<"\t"<<p[i].pos<<"\t"<<p[i].Email<<endl;();cout<<"output file success!!!!!!"<<endl;}void datafile_screen(struct student *p,int n) delC++面向对象程序设计》(第2版)北京:电子工业出版社,。

相关文档
最新文档