软件体系结构 个人通讯录管理系统要点

软件体系结构 个人通讯录管理系统要点
软件体系结构 个人通讯录管理系统要点

课程实验报告

软件系统结构

专业 软件工程 学生姓名 张伯虎 班级 B 软件121 学

1210701128 指导老师

孙莉

实验一 C/S结构应用设计

一、实验目的

设计并实现一个基于多层C/S结构的数据库应用,熟悉多层C/S体系结构及其基本处理流程,了解多层结构表现层、业务逻辑层(功能层)、数据访问层所完成的功能,掌握多层C/S结构的数据库应用设计方法,对这三层进行明确分割,并在逻辑上使其独立。学生通过本实验的训练能够熟练掌握对小型数据库应用系统三层结构层次划分方法及系统实现技术。

二、实验原理

1、C/S软件体系结构是基于资源不对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。

2、C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络。

(1)二层客户/服务器风格

(2

三、主要仪器及耗材

每人一台计算机

四、实验步骤及内容

需要实际设计开发出一个简单的基于二层C/S结构的应用系统——个人通讯录管理系统,主要步骤和内容如下:

1、在 SQL Server 2000中建立数据库Contact,建立表friend。

建立数据库Contact:

create database Contact

use contact

go

建立表friend:

Create table friend(

Fid int identity(1,1) not null,--编号信息

Fname varchar(8) not null,--姓名信息

Fphone varchar(12) ,--电话信息

Faddress varchar(100) –地址信息

)

go

2、在Visual Studio 2000中用C#语言建立用户界面层(UI)程序:Contact 项目,主要呈现用户操作界面。

3、运行程序查看结果。

添加联系人信息

:

五、 实验注意事项

1. C#区分大小写,编写程序时一定要注意。

2. 程序要注意保存,并记住保存的位置

3. 本实验为综合性实验,需要多次才能完成,前面的阶段性实验成果后续需要

使用,在下课离开机房时务必将数据库、项目程序等备份到移动存储设备带走。

六、 讨论、思考题

1、画出二层C/S 结构简图,并列举优缺点。

二层C/S 结构的优点: 开发比较容易,操作简单,容易理解 二层C/S 结构的缺点:

应用程序升级和维护困难,可扩展性差

3、画图表示二层C/S结构三种可能的物理部署方式。

4、写出本实验中业务逻辑层的主要功能及实现代码。

业务逻辑层的主要功能是:查看联系人信息,添加联系人信息,修改联系人信息,删除联系人信息。

1.查看联系人信息主要代码:

string sql = "select Fid,Fname,Fphone,Faddress from t_friend";

SqlConnection conn = new SqlConnection(connstr);

conn.Open();

SqlCommand comm = new SqlCommand(sql,conn);

SqlDataReader dr = comm.ExecuteReader(CommandBehavior.CloseConnection);

try{

list_allFriend.Items.Clear();

while (dr.Read()){

this.list_allFriend.Items.Add(

new ListViewItem(new string[]{dr.GetInt32(0).ToString(),

dr.GetString(1),

dr.GetString(2),

dr.GetString(3)}));

}

}catch (Exception e) {

MessageBox.Show(e.ToString());

}finally{

dr.Close();

}

2.添加联系人信息:

string sql = "insert into t_friend values('" +tb_name.Text+ "','" +tb_phone.Text+ "','"

+tb_adress.Text+ "')";

SqlConnection conn = new SqlConnection(connstr);

conn.Open();

SqlCommand comm = new SqlCommand(sql, conn);

int lineNum = comm.ExecuteNonQuery();

conn.Close();

3.修改联系人信息:

string sql = "update t_friend set Fname='" + tb_name.Text + "',Fphone = '" + tb_phone.Text + "',Faddress='" + tb_adress.Text + "' where Fid = '"+lineNumFlag+"'";

SqlConnection conn = new SqlConnection(connstr);

conn.Open();

SqlCommand comm = new SqlCommand(sql, conn);

int lineNum = comm.ExecuteNonQuery();

conn.Close();

4.删除联系人信息:

string sql = "delete from t_friend where Fid = '" + lineNumFlag + "'";

SqlConnection conn = new SqlConnection(connstr);

conn.Open();

SqlCommand comm = new SqlCommand(sql, conn);

int lineNum = comm.ExecuteNonQuery();

conn.Close();

七、实验体会

在这次实验中,主要是C/S二层结构的设计和项目代码撰写,对于C/S二层结构的设计还是比较简单的,主要是在代码撰写时遇到一些问题,主要是数据库连接这一块,我在SQLEXPRESS服务中新建数据库和用户,一直无法用该用户名登陆数据库,后来发现是SQLEXPRESS服务有问题,我把数据库的服务改成了MSSQLSERVER问题解决。

在这次实验中我明白了C/S的含义以及C/S二层结构的设计和代码的撰写。在代码撰写的过程中,我明白了C/S二层架构的优点:代码撰写简单,容易理解,但我也了解到了C/S二层架构的缺点:就是代码的冗余度高,回过头看结构不是得有条理,调试改错时有点难度,后期程序的升级和维护比较困难,程序的可扩展性比较差。

实验二 C/S结构应用设计

一、实验目的

设计并实现一个基于多层C/S结构的数据库应用,熟悉多层C/S体系结构及其基本处理流程,了解多层结构表现层、业务逻辑层(功能层)、数据访问层所完成的功能,掌握多层C/S结构的数据库应用设计方法,对这三层进行明确分割,并在逻辑上使其独立。学生通过本实验的训练能够熟练掌握对小型数据库应用系统三层结构层次划分方法及系统实现技术。

二、实验原理

1、C/S软件体系结构是基于资源不对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。

2、C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和

网络。

三、主要仪器及耗材

每人一台计算机

四、实验步骤及内容

需要实际设计开发出一个简单的基于多层C/S结构的应用系统——个人通讯录管理系统,主要步骤和内容如下:

1、在 SQL Server 2000中建立数据库Contact,建立表friend。

建立数据库Contact:

create database Contact

use contact

go

建立表friend:

Create table friend(

Fid int identity(1,1) not null,--编号信息

Fname varchar(8) not null,--姓名信息

Fphone varchar(12) ,--电话信息

Faddress varchar(100) –地址信息

)

Go

2、在Visual Studio 2000中用C#语言建立用户界面层(UI)程序:Contact 项目,主要呈现用户操作界面。

3、运行程序查看结果。

添加联系人信息:

五、实验注意事项

1.C#区分大小写,编写程序时一定要注意。

2.程序要注意保存,并记住保存的位置

3.本实验为综合性实验,需要多次才能完成,前面的阶段性实验成果后续需要

使用,在下课离开机房时务必将数据库、项目程序等备份到移动存储设备带走。

六、讨论、思考题

1、画出三层C/S结构简图,并列举优缺点。

三层

1.允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,

从而使整个系统的逻辑结构更为清晰,能提高系统和软件的可维护

性和可扩展性。

2.允许更灵活有效地选用相应的平台和硬件系统,使之在处理负荷能

力上与处理特性上分别适应于结构清晰的三层;并且这些平台和各

个组成部分可以具有良好的可升级性和开放性。

3.三层C/S结构中,应用的各层可以并行开发,各层也可以选择各自

最适合的开发语言。

4.允许充分利用功能层有效地隔离开表示层与数据层,未授权的用户

难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据

层,这就为一剪梅的安全管理奠定了坚实的基础;整个系统的管理

层次也更加合理和可控制。

三层C/S缺点:

使用C/S三层架构需要把功能层分出来,这会可能会对执行效率有所影响;也有可能会造成一些存储空间的消耗比较大。

2、简述本实验中开发三层C/S结构应用系统的技术线路。

4、写出本实验中业务逻辑层的主要功能及实现代码。

//修改联系人

public bool UpdateFriend(string name, string phone, string address, int lineNumFlag) { string sql = "update t_friend set Fname='" + name + "',Fphone = '" + phone + "',Faddress='" + address + "' where Fid = '" + lineNumFlag + "'";

BuildConnection(sql);

int lineNum = comm.ExecuteNonQuery();

CloseConnection();

if (lineNum == 1) {

return true;

}else{

return false;

}

}

七、实验体会

在此次实验中,我学会了软件开发时使用C/S三层架构,我在C/S三层架构与二层架构实验对比中我了解到了C/S三层架构的优点。使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为清晰,能提高系统和软件的可维护性和可扩展性;使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层;并且这些平台和各个组成部分可以具有良好的可升级性和开放性;应用的各层可以并行开发,各层也可以选择各自最适合的开发语言;允许充分利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段非法地访问数据层,这就为一剪梅的安全管理奠定了坚实的基础;整个系统的管理层次也更加合理和可控制。基于以上优点,三层架构对与二层架构而言,完全可以取而代之,而且使用三层架构可以使你的程序代码的条理更加的清晰,增强可读性。

实验三 B/S结构应用设计

一、实验目的

设计并实现一个基于B/S结构的数据库应用,熟悉B/S体系结构及其基本处理流程,了解B/S结构系统各部分所完成的功能,掌握B/S结构的数据库应用设计方法。学生通过本实验的训练能够熟练掌握对小型数据库应用系统B/S 结构设计及系统实现技术。

二、实验原理

1、浏览器/服务器(B/S)风格就是上述三层应用结构的一种实现方式,其具体结构为:浏览器/Web服务器/数据库服务器。

2、B/S体系结构主要是利用不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本。从某种程度上来说,B/S结构是一种全新的软件体系结构。

三、主要仪器及耗材

每人一台计算机,配备

四、实验内容及步骤

1、采用B/S结构实现个人通讯录系统。该系统的设计目标是能够轻松地管理个人的联系人信息,包括添加、修改和删除操作。联系人信息包括姓名、住址、电话。整个系统的功能图如下图所示:

在MyEclips中新建项目:Structure_Contact。生成项目之后在src下新建包org.action,在org.action包中建立action类,包括:addAction、deleteAction、editAction、mainAction、modifyAction、registerAction类主要步骤如下:

(1)建立addAction类继承ActionSupport类,主要是同于添加用户,主要

代码如下:

public String execute() throws Exception{

HttpServletRequest request = ServletActionContext.getRequest(); //mark

HttpSession session = request.getSession();

userfriend = new UserFriend();

userfriendid = new UserFriendId();

userfrienddaoimp = new UserFriendDaoImp();

name = request.getParameter("name");

address = request.getParameter("address");

phone = request.getParameter("phone");

user = (User)session.getAttribute("user"); //account and password

userfriendid.setUser(user.getUsername()); //account_name

userfriend.setId(userfriendid); //id auto-increase

userfriend.setName(name);

userfriend.setAddress(address);

userfriend.setPhone(phone);

if(userfrienddaoimp.insert(userfriend)){

ArrayList al = userfrienddaoimp.getAll(user.getUsername());

session.setAttribute("al", al);

return "success";

}

else{

return "error";

}

}

}

(2)建立deleteAction类继承ActionSupport类用于删除用户,代码如下:public class deleteAction extends ActionSupport{

private UserFriend userfriend;

private String user;

private int id;

private UserFriendId userfriendid;

private UserFriendDaoImp userfrienddaoimp;

public String execute() throws Exception{

userfriend = new UserFriend();

userfriendid = new UserFriendId();

userfrienddaoimp = new UserFriendDaoImp();

HttpServletRequest request = ServletActionContext.getRequest(); //mark

HttpSession session = request.getSession(); //mark

user = request.getParameter("username");

System.out.println(request.getParameter("id"));

id = Integer.parseInt(request.getParameter("id"));

userfriendid.setUser(user);

userfriendid.setId(id);

userfriend.setId(userfriendid);

if(userfrienddaoimp.delete(userfriend)){

ArrayList al = userfrienddaoimp.getAll(user);

session.setAttribute("al", al);

return "success";

}

else{

return "error";

}

}

}

(3)建立editAction类继承ActionSupport类,用于编辑用户,代码如下:public class editAction extends ActionSupport{

private String user ;

private int id;

private String name;

private String address;

private String phone;

private UserFriend userfriend;

private UserFriendId userfriendid;

private UserFriendDaoImp userfrienddaoimp;

public String execute() throws Exception{

HttpServletRequest request = ServletActionContext.getRequest();

HttpSession session = request.getSession();

userfriendid = new UserFriendId();

userfriend = new UserFriend();

userfrienddaoimp = new UserFriendDaoImp();

System.out.println(request.getParameter("username")); //null

System.out.println(request.getParameter("id")); //null

user = request.getParameter("username");

id = Integer.parseInt(request.getParameter("id"));

name = request.getParameter("name");

address = request.getParameter("address");

phone = request.getParameter("phone");

userfriendid.setId(id);

userfriendid.setUser(user);

userfriend.setId(userfriendid);

userfriend.setName(name);

userfriend.setAddress(address);

userfriend.setPhone(phone);

if(userfrienddaoimp.update(userfriend)){

ArrayList al = userfrienddaoimp.getAll(user);

session.setAttribute("al", al);

return "success";

}

else{

return "error";

}

}

}

(4)建立org.model包,在包中创建User、UserFriend和UserFriendId类,创建User.hbm.xml和UserFriend.hbm.xml文档。

public class User implements java.io.Serializable {

private String username;

private String password;

public User() {

}

public User(String username) {

https://www.360docs.net/doc/d912247822.html,ername = username;

}

public User(String username, String password) {

https://www.360docs.net/doc/d912247822.html,ername = username;

this.password = password;

public String getUsername() {

return https://www.360docs.net/doc/d912247822.html,ername;

}

public void setUsername(String username) {

https://www.360docs.net/doc/d912247822.html,ername = username;

}

public String getPassword() {

return this.password;

}

public void setPassword(String password) {

this.password = password;

}

}

public class UserFriend implements java.io.Serializable {

private UserFriendId id;

private String name;

private String address;

private String phone;

public UserFriend() {

}

public UserFriend(UserFriendId id) {

this.id = id;

}

public UserFriend(UserFriendId id, String name, String address, String phone) { this.id = id;

https://www.360docs.net/doc/d912247822.html, = name;

this.address = address;

this.phone = phone;

}

public UserFriendId getId() {

return this.id;

}

public void setId(UserFriendId id) {

this.id = id;

}

public String getName() {

return https://www.360docs.net/doc/d912247822.html,;

}

public void setName(String name) {

https://www.360docs.net/doc/d912247822.html, = name;

}

public String getAddress() {

return this.address;

public void setAddress(String address) {

this.address = address;

}

public String getPhone() {

return this.phone;

}

public void setPhone(String phone) {

this.phone = phone;

}

}

public class UserFriendId implements java.io.Serializable {

private Integer id;

private String user;

public UserFriendId() {

}

public UserFriendId(Integer id, String user) {

this.id = id;

https://www.360docs.net/doc/d912247822.html,er = user;

}

public Integer getId() {

return this.id;

}

public void setId(Integer id) {

this.id = id;

}

public String getUser() {

return https://www.360docs.net/doc/d912247822.html,er;

}

public void setUser(String user) {

https://www.360docs.net/doc/d912247822.html,er = user;

}

public boolean equals(Object other) {

if ((this == other))

return true;

if ((other == null))

return false;

if (!(other instanceof UserFriendId))

return false;

UserFriendId castOther = (UserFriendId) other;

return ((this.getId() == castOther.getId()) || (this.getId() != null

&& castOther.getId() != null && this.getId().equals(

castOther.getId())))

&& ((this.getUser() == castOther.getUser()) || (this.getUser() != null

&& castOther.getUser() != null && this.getUser()

.equals(castOther.getUser())));

}

public int hashCode() {

int result = 17;

result = 37 * result + (getId() == null ? 0 : this.getId().hashCode());

result = 37 * result

+ (getUser() == null ? 0 : this.getUser().hashCode());

return result;

}

}

(5)User.hbm.xml,用于数据库中的表User和定义的属性相对应,代码如下:

"https://www.360docs.net/doc/d912247822.html,/hibernate-mapping-3.0.dtd">

(6)UserFriend.hbm.xml用于数据库中的表UserFriend和定义的属性相对应,代码如下:

"https://www.360docs.net/doc/d912247822.html,/hibernate-mapping-3.0.dtd">

用户登录界面:

系统的登录界面:

五、实验体会

这次的实验了解到了B/S结构的一些特点,通过了解到的这些特点以及看书做出了这个系统。实验要有自己的思考能力,要有较强的动手能力,不会的问题不能老依赖别人去教你,要自己去发现问题的解决方法。

实验四 B/S结构应用设计

一、实验目的

设计并实现一个基于B/S结构的数据库应用,熟悉B/S体系结构及其基本处理流程,了解B/S结构系统各部分所完成的功能,掌握B/S结构的数据库应用设计方法。学生通过本实验的训练能够熟练掌握对小型数据库应用系统B/S 结构设计及系统实现技术。

二、实验原理

1、浏览器/服务器(B/S)风格就是上述三层应用结构的一种实现方式,其具体结构为:浏览器/Web服务器/数据库服务器。

2、B/S体系结构主要是利用不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本。从某种程度上来说,B/S结构是一种全新的软件体系结构。

三、主要仪器及耗材

每人一台计算机,配备

四、实验内容及步骤

1、采用B/S结构实现个人通讯录系统。该系统的设计目标是能够轻松地管理个人的联系人信息,包括添加、修改和删除操作。联系人信息包括姓名、住址、电话。

五、实验操作过程

接着上次的项目中建立的Structure_Contact项目,生成项目之后在src下新建包org.action,在org.action包中建立action类,包括:addAction、deleteAction、editAction、mainAction、modifyAction、registerAction类

C语言课程设计报告—手机通讯录管理系统

C程序课程设计报告 --手机通讯录管理系统 姓名:谢骏 学院:珠宝学院 学号:649 班级:141082

一课程设计目的和内容概述 1.目的:加深对《C语言》课程所学知识的理解,进一步巩固C语言编程方法。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备解决综合性实际问题的能力,加强动手能力。 2.内容:设计一个简易的手机通讯录管理系统。该题目要求在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用,包括时间函数、、绘图函数,以及文件的读写操作等。 其中结构体,函数的调用,算法的设计是尤为重要的。 二题目 手机通讯录管理系统。 [问题描述] 该系统模拟手机通讯录管理系统,实现对手机中的通讯录进行管理 [基本要求] 要能提供以下几种功能: (1)查看功能:选择此功能时,列出下列三类选择:

A:办公类B:个人类C:商务类 (2)当选中某类时,显示出此类所有数据中的姓名和电话号码 (3)添加数据功能:能录入新数据,每个结点包括:姓名,电话号码,分类(可能选项有:w为办公类p为个人类b为商务类),电子邮件。例如:杨春商务类 当录入重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通讯录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。(4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改。 (5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。 三程序设计 1.总体设计 首先,因为每个个体有多种信息,所以要建立结构体来储存和整合各个信息。然后利用模块来分别实现程序的各个功能。各个模块用函数来实现。在通过通过主函数来判断输入字母,从而调动函数,实现所需功能。最后将输入的文件保存在文件里,以便重复使用。 2.详细设计

个人通讯录管理系统c语言源程序优秀版)

#include /*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件#include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/

void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/ if ((fp=fopen("同通讯录.txt","w"))==NULL) /*只写方式判断*/

通讯录管理系统的设计与实现

课程设计报告 通讯录管理系的设计与实现 姓名:钟婷英 班级:计122 学号:1213023039 时间:2014年1月10日 1,问题描述 通讯录是用来记载和查询联系人通讯信息的工具,电子通讯录已经为手机,电子词典等设备中不可缺少的工具软件,请设计一个能够满足这种需求的软件,基本功能模块如下图所示。 输入:记录的录入。 显示:通讯录的显示。 查找:按指定方式,输入关键字,查找指定记录。 插入:实现记录的添加或在指定位置插入记录。 保存:将内存中正在被操作的通讯录以文件形式保存到磁盘。 读入:保存的逆操作,讲存在磁盘中的通讯录文件读到内存中。 排序:按指定关键字对通讯录数据进行排序。 修改:提供修改某条记录的功能。 移动:移动记录在通讯录中的存储位子,使其被查找或显示时的位序前移或后移。 退出:结束程序运行。 2,设计要求 (1)设计通讯录数据的逻辑结构和物理结构。 (2)通讯录至少包括下列数据信息:姓名,电话,单位等。 (3)完成图示基本功能。 (4)软件易用,操作简单。 (5)根据自己使用通讯录体会扩充其他功能,如按姓名查找,按号码查找,按序号删除等。 (6)设计足够多的测试用例 主程序 输 入 显示 查找 插入 删除 保存 读入 排序 修改 移动 退出

(7)数据输入有效性检验:如姓名不能为空,号码中不能有非法字符等。(8)提供分组管理的相关功能,如:分组显示,加入组,组创建,组查询等。(9)可视化的界面设计。 3,概要设计 1,使用struct data struct addressList定义结构体类型,struct data结构体中包括年月日的定义,strcut addressList中包括联系人ID账号,名字,性别,名族,生日,手机号码,QQ号码和家庭地址等。 struct date { int year; int month; int day; }; struct addressList { char ID[10]; char name[10]; char gender[4]; char minzu[2]; date birthday; char shoujihao[14]; char QQ[11]; char address[40]; }; 2,程序设计过程中用到的函数有: int zhujiemian( ); void tianjia(fstream & ); void xiugai(fstream & ); void shanchu(fstream & ); void chazhao(fstream & ); void liulan(fstream & ); int findRecord(fstream &, const char *); int getAmount(fstream & ); 3,整个程序用的是面向对象的方法,在主函数中调用各种函数,来实现通讯录的功能。在主函数中,使用的是c++语言中的开关语句(switch)用来选择通讯录的各种功能。

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

通讯录信息管理系统设计计算机学院计算机科学与技术专业 1.课程设计的目的 学习了C语言程序设计这门课程之后,使我对程序设计有了一定的了解,为了熟练掌握C语言的语法特点、及其数据结构,提高自身编写程序的能力。通过课程设计实现理论知识与实际情况的结合,使所学知识能够在现实社会中起到一定的作用,防止所编写的程序脱离实际,让程序可以更好的发挥作用,以便减轻实际工作中所遇到的繁琐步骤,提高现实工作中的效率。此外通过课程设计提高逻辑思考能力和解决实际问题的能力。程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。因此,程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢改观。这当中就有一个严谨治学、一丝不苟的科学精神的培养,又有一个不怕失败、百折不挠品格的锻炼。 通讯录信息管理系统是生活中不可缺少的部分编写了一个通讯录信息管理系统是十分必要的。 本程序设计具有通讯信息的录入,进行保存、查找、删除等功能,操作界面简洁美观,易于操作。程序用了条件、循环、指针、结构体等知识点,综合了文件的打开和保存编写的。软件运用菜单实现交互式管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足的需要。 通过对通讯录管理系统的设计,进一步理解和掌握C语言这门课程的知识点,能够熟练的调用各种函数,把各种C语句有机的结合起来,提高自己C语言程序设计的能力,为今后解决实际问题打下良好基础。

2.设计方案论证 2.1设计思路 建立一个函数,用来添加、显示、删除、查询、修改、保存通讯录等信息,完成通讯录的功能。主函数可以调用六个子函数,分别完成添加记录、显示记录、删除记录、查询记录、修改记录、保存记录、退出系统等功能。在主函数中可以以1、2、3、4、5、6数字键分别可以执行某个功能模块。 2.2程序设计 2.2.1根据图1定义数据类型建立函数 typedef struct { char Num; //编号 char Name[10]; //姓名 char Tel[15]; //电话号码 char Email[20]; //邮箱 char age[8]; //年龄 char adds[20]; //住址 }Person; 2.2.2主函数及其流程图 定义主函数main()和一系列的功能函数,只有通过这些函数才可实现程序

个人通讯录管理系统

C语言程序设计 课程设计报告 个人通讯录管理系统设计 专业__网络工程___ _____ 班级___(3)班___________ 学号__3148119322 姓名__吴道金 _ 学号_ 3148119319 _姓名_ 林东垚 ___ 学号_ 3148119359 _姓名__ 林家勇 __ 学号__3149119349__________姓名___上官景铨_____ ______ 福建工程学院软件学院 2015年月日 (正文部分)

一、需求分析 建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。功能要求(1) 通讯录的每一条信息包括姓名、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ等。 (2) 输入功能:可以一次完成若干条信息的输入。 (3) 显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示) (4) 查找功能:可以按姓名等多种方式查找通讯信息 (5) 增加、删除、修改功能:完成通讯录信息的多种更新 二、总体设计

三、详细设计 void menu(); /*菜单*/ void Add(); /*添加记录*/ void print(); /*输出记录*/ void Find(); /*查找记录(按姓名)*/

void Delete(); /*删除记录*/ void SaveFree(); /*保存到文件*/ void Creat(); /*打开文件*/

四、程序源代码 #include #include #include

学生通讯录管理系统的设计与实现

学生通讯录管理系统的设计与实现

学生通讯录管理系统的设计与实现 问题描述: 纸质的通讯录已经不能满足实际需求,容易丢失,查找困难等问题是纸质通讯录所不能克服的缺点。“学生通讯录管理系统”是为了帮助老师、同学,或者其它一些需要使用的通讯录的人员进行管理和应用的一种应用程序。 需求分析: 1)输入数据建立通讯录。 2)查询通讯录中满足要求的信息。 3)插入新的通讯录信息。 4)删除不需要的通讯录信息。 5)查看所有的通讯录信息。 主界面设计要求: 1)通讯录的建立 2)插入通讯录记录 3)查询通讯录记录 4)删除通讯录记录 5)显示通讯录记录 6)退出系统 设计要求: A.建立通讯录时,每个学生的信息包括:学号,姓名,电话。

B.查找时,学号、姓名、电话均能够作为查询字段。 C.查看所有的通讯录信息时,所有记录需要时有序的(按学号排序,按姓名排序(字典序),按电话号码排序)。 D.存储结构:要求使用顺序存储结构。 E.数据使用:使用本班级的具体信息。 需求分析: 本次设计目的是学生信息管理系统,可存入每个学生的基本信息,所有学生信息都可根据名字、学号、电话、邮箱进行查询,也都能够根据这四个基本信息检索到一个学生并删除其数据。输入形式:student.txt,以文件形式进行输入。 输出形式:根据不同的输入进行不同的操作。 达到功能:能插入一个学生的信息,能删除一个学生的信息,能查询一个学生的信息。 测试数据:班上70个同学的基本数据。 概要设计: 数据类型:顺序链表 ArrayList类 学生数据结构:StuData类包含name、id、phone、email四个String基本类型。 所有操作写在Structure中,包含insert、remove、query、printAll。 Main函数用Java标准输入,循环输入,用switch判断输入进行

个人通信录管理系统 课程设计

中国矿业大学银川学院 面向对象程序设计课程设计报告 (2011/2012学年第二学期) 题目名称个人通信录管理系统 系部机电动力与信息工程系 专业计算机科学与技术 班级 10级计算机 姓名 xxx 学号 120100510062 完成时间 2011年 6 月 指导老师 xxx

引言: (3) 1 课程设计目的及意义 (5) 2 详细设计 (5) 2.1需求描述 (5) 2.1.1通讯录界面设计 (5) 2.1.2通讯录添加联系人模块 (5) 2.1.3通讯录删除联系人模块 (5) 2.1.4通讯录拨号模块 (6) 2.1.5通讯录显示所有联系人模块 (6) 2.1.6通讯录修改联系人模块 (6) 主要是修改联系人的信息,界面提示要输入需要修改的姓名或者电话号码,如果不正确,显示对不起,联系人中没有你找的人。如果正确,则显示出改联系人的所有信息,并提示根据下面提示修改信息,姓名、电话号、QQ、邮编、地址等 (6) 2.1.7通讯录关闭通讯录模块 (6) 提示谢谢使用! (6) 2.2功能描述 (6) 2.2.1添加联系人; (6) 2.2.2删除联系人 (8) 2.2.3拨号 (11) 2.2.4显示所有联系人的实现: (12) 2.2.5 修改联系人模块 (13) 2.2.6 查询联系人模块 (17) 对文件进行遍历,将联系人的所有信息都显示出来。 (17) 2.2.7关闭通讯录模块 (19) 提示谢谢使用! (19) 2.2.8主函数 (19) 2.3程序用行说明 (20) 2.3.1程序界面 (20) 2.3.2添加联系人信息 (20) 2.3.3删除联系人 (21) 2.3.4拨号 (23) 2.3.5显示所有联系人 (23) (23) 2.3.6修改联系人信息 (23) 2.3.7查询联系人 (24) 2.3.8关闭通讯录 (24) 3课程设计总结 (25) 3.1编程日志 (25) 3.2测试报告 (25) 4 心得体会: (25) 附录: (26) 参考文献: (43)

通讯录管理系统的设计与实现

数据结构实验报告 实验名称:通讯录管理系统的设计与实现 试验时间:2011.1.13 班级:姓名 学号: 指导老师:1.问题描述: 通讯录是用来记录,查询联系人通讯信息的工具。电子通讯录已成为手机,电子词典等电子设备中不可缺少的工具软件。设计一个能够,满足这种需求的软件。 基本功能模块:输入,显示,查找,插入,删除,保存,读入,排序,修改,移动,退出。 2.设计要求: (1)基本要求 1.设计通讯录数据的逻辑结构和物理结构。 2.通讯录至少包含下列数据信息:姓名,电话,地址等。 3.完成图示基本功能。 4.软件易用,操作简单。 5.根据自己使用通讯录的体会,扩充其他功能,如按姓名查找,按学 号查找,按序号查找等。 (2)较高要求 1.数据输入有效性检验:如姓名不能为空,号码中不能有非法字符等。 2.提供分组管理的相关功能,如:分组显示,加入组,组创建,组查 询等。 3.可视化的界面设计。 3.测试案例:

请输入您的选择(0--6): 1 分别输入编号,姓名,性别,电话,地址(输入0 结束通信录的建立): 编号:01 姓名:张三 电话:152****1919 地址:2-222 编号:0 请输入您的选择(0--6): 2 编号:01 姓名:张三 电话:152****1919 地址:2-222

是否继续添加?(Y/N):N 请输入您的选择(0--6): 3 请选择查询的方式(1 编号,2 姓名):1 请输入编号:01 编号:01 姓名:张三 电话:152****1919 地址:2-222 请问是否继续查询?(Y/N):N

请输入您的选择(0--6): 4 输入删除编号:01 删除学生信息如下: 编号:01 姓名:张三 电话:152****1919 地址:2-222 请输入您的选择(0--6): 5 通讯录的全部信息如下: *****编号*****姓名*****性别*****电话*****地址*****

Java课程设计--个人通讯录管理系统

《JAVA程序设计》课程设计说明书

目录 1 引言 (1) 1.1课程设计选题 (1) 1.2课程设计的目的 (1) 1.3本选题的设计背景 (1) 2 需求分析 (1) 2.1 功能需求 (1) 2.2 系统的开发运行环境 (2) 3 总体设计 (2) 3.1 系统体系结构设计 (2) 3.2系统功能模块及主要类设计 (3) 3.3数据库设计 (5) 4 详细设计与实现 (7) 4.1 登录模块 (7) 4.2 注册新用户模块 (8) 4.3 查询模块 (9) 4.4 添加模块 (11) 4.5 修改模块 (13) 4.6删除模块 (16) 4.7备份模块 (18) 4.8退出模块 (19) 5 小结和展望 (20) 参考文献 (22) 附录 (22) 使用说明书 (22)

1引言 1.1课程设计选题 《个人通讯录管理系统》 1.2课程设计的目的 通过编写并调试一个Java应用软件,熟悉和掌握使用Java开发应用程序的完整过程。 使学生巩固和加深以Java 语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。 1.3本选题的设计背景 一直以来就想做一个比较实用的通讯录管理系统,这样可以方便我对于身边联系人信息的管理,防止遗忘和丢失。 在这样一个信息化的社会里,人们的生活也越来越离不开电脑了,本次通过做个人通讯录管理系统,希望摈弃传统的纸质记录的弊端,发挥电脑软件的优势,方便人们对自己的联系人信息的管理。 2需求分析 2.1 功能需求 2.1.1个人通讯录功能需求 (1)登陆功能。用户可以直接输入用户名和密码,登陆进入通讯录的主功能界面。 (2)注册功能。其他用户可以输入自己的用户名和密码及确认密码,来实现注册成为该通讯录的使用者。 (3)查询功能。在该功能里,用户可以采用模糊查询和精确查询两种查询方式来对自己存储的联系人信息进行查询。 (4)添加功能。在该功能里,用户可以添加自己的常用联系人和分组信息。

C 通讯录管理系统的设计与实现..

目录 摘要 (1) 关键词 (1) 第一章绪论 (2) 1.1课题背景 (2) 1.2 目的和意义 (2) 第二章需求分析 (3) 2.1 范围 (3) (1) 标识 (3) (2) 系统概述 (3) 2.2 需求概述 (3) (1) 系统目标 (3) (2) 运行环境 (3) ①设备 (3) ②支持程序 (3) ③用户的特点 (3) 2.3功能需求 (4) (1)功能介绍 (4) (2) 系统用例图 (4) 2.4实体关系图 (5) 第三章概要设计 (6) 3.1 范围 (6) (1) 标识 (6) (2) 系统概述 (6) 3.2 系统结构 (6) 3.3 通讯录界面设计 (7) 第四章系统详细设计 (8) 4.1 范围 (8) (1) 标识 (8)

(2) 系统概述 (8) 4.2 详细设计说明 (8) 第五章测试说明 (16) 5.1 范围 (16) (1) 标识 (16) (2) 系统概述 (16) 5.2 测试计划及预期结果 (16) 5.3 具体测试情况 (16) 第六章总结 (19) 参考文献 (20)

通讯录的设计与实现 摘要 随着互联网的不断发展,互联网对我们生活产生的影响越来越大。在日常的生活中,我们需要接触很多不同的人,如何运用互联网技术实现朋友圈通讯录的管理呢?这是我们日常生活中经常要面临的问题。本次毕业设计中设计的通讯录管理系统既可以实现对通讯录进行管理,在本地进行通讯录的增加、修改、删除、更新等操作。本次设计的通讯录管理系统主要是了解通讯录管理系统的业务逻辑,熟悉通讯录管理系统的实现方式,模拟了真实的通讯录管理软件,为后续相关内容的学习打下了坚实的基础。 通讯录管理系统是一个专门针对少用户的实用系统,它方便了大家对众多信息的储存和快速查询的功能,大大减少了查找过程的时间,是一个比较实用的通讯录管理系统,。对我们后续学习移动端的通讯录管理也会有很大的帮助。 本设计使用的计算机语言是C++,C++语言是在C语言的基础上作了进一步的强化。C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它的应用范围广泛,具备很强的数据处理能力。作为C语言家族的一种,C++也具备了C 语言所具有的优点,并对其进行了优化封装,是开发者更容易操作运用,所以本次课程设计采用了C++作为系统的开发语言。本通讯录管理系统的主要功能有:建立通讯录的链表、插入通讯录信息、查询通讯录信息、删除通讯录信息,输出通讯录信息,保存到通讯录信息。采用的是面向过程的方法,封装函数功能,调用各个功能函数来实现系统的各个功能。 关键词 通讯录;链表;类;

个人通讯录管理系统C语言课程设计报告

重庆科技学院 《C语言程序设计》 课程设计报告 学院:_电气与信息工程学院_ 专业班级:电自专2011-01 学生姓名:蒋洪山学号: 2011630194 设计地点(单位)________ I515 ______________ __ 设计题目:__________个人通讯录管理系统 _____________ 完成日期: 2012 年12月28日 指导教师评语: ______________________ _________________ __________________________________________________________________________________ __________________________________________________________________________________ _____________________________________ __________ _ 成绩(五级记分制):______ __________ 指导教师(签字):________ ________

摘要 本次课程设计的题目为个人通讯录管理系统,要求将程序中所输入的联系人姓名、电话和地址信息这三个数据以文本方式保存在磁盘中,并且能够对所储存的联系人信息进行显示、查询、修改、删除等功能。 我编写的程序从整体上看可分为两个部分,一部分为文件的建立、读取和保存,另一部分为通讯录功能的实现。在文件部分,我通过readfile()函数和writefile()函数从而实现了对磁盘上数据的进行写和读,通过刚开始的界面提示可以知道文件是否建立,以免丢失数据,我还为用户设计了保存退出和不保存退出两大功能供用户做选择。在模块功能实现部分,通过scanf从键盘上输入的数字放到switch() case 循环中来实现调用zengjia()、shanchu()、xiugai()、chazhao()等十五个函数来实现“添加”、“查询和显示”、“修改”、“删除”等不同功能。 关键字:文件、数组、循环、函数

个人通讯录管理(c语言课程设计)

安徽工业大学 《C语言课程设计》实习综合报告课题名称:个人通讯录管理系统 实习成员:王刚 学号: 109074372 专业班级: 网络工程103班 指导教师: 郑啸老师

目录 一.问题描述 (2) 二. 各功能流程图与设计思路 (3) 2.1显示模块 (3) 2.2查找模块……………………………………………4.. 2.3添加模块 (6) 2.4删除模块 (8) 2.5修改模块 (9) 三、文件的读取与保存 (11) 四、程序源代码 (12) 五、调试与运行结果 (18) 六、计算机学院课程设计评定意见 (24) 一.问题描述

设计通讯录包含以下功能: (1)通讯录的每一条信息包括姓名、单位、固定电话、移动手 机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ 等。 (2)输入功能:可以一次完成若干条信息的输入。 (3)显示功能:完成全部通讯录信息的显示。 (4)查找功能:可以按姓名等多种方式查找通讯信息。 (5)增加、删除、修改功能:完成通讯录信息的多种更新。 二.各功能流程图与设计思路 Menu菜单:

运用switch()进行操作: case'1': 显示功能,list()函数 说明:利用for循环,逐个输出已保存的内容 代码如下: //*****************显示通讯录中的内容************* void list() { printf("编号姓名电话 \t手机 \t工作单位\tEMAIL \t\tQQ\n"); for(i=0;i

通讯录管理系统的设计与实现

大连民族大学 计算机科学与工程学院实验报告 实验题目: 1. 学生信息管理系统的设计与实现 2. 暴力算法在旅行商问题中的应用 课程名称:信息系统开发案例 实验类型:□演示性□验证性□操作性□设计性 综合性 专业:软件工程班级:144 学生姓名:赵耀学号:2014082430 实验日期:2017年3月6日—4月27日 实验地点:金石滩校区I303机房 实验学时:24学时实验成绩: 指导教师:赵戈

通讯录管理系统的设计与实现 摘要 本项目用C++语言开发了一个简单的通讯录管理系统,该系统能对联系人信 息进行“增删改查”。系统的UI设计基于Windows系统自带的控制台。测试结 果表明该通讯录管理系统可以稳定正确运行,具有较高的可靠性。 关键词:通讯录管理系统;C++语言;Windows 控制台 目录 1.选题的背景和意义 (3) 2.需求分析 (3) 2.1 用例图 (3) 2.2 用例文本 (4) 3.总体设计 (5) 3.1 通讯录管理系统功能模块图 (5) 3.2 主控main函数执行流程图 (6) 3.3 执行流程图的解释说明 (6) 3.4 存储结构设计 (7) 4.详细设计 (8) 5程序运行结果 (9) 6总结和展望 (9) 7附录 (10) 程序源代码: (10)

1.选题的背景和意义 当今时代,计算机已经成为人们生活中不可或缺的一部分,它打破了地域时间限制,改变了人们的工作和生活方式。人们之间的联系越来越便捷,这就使得要经常与很多人保持着联系,而单纯依靠人脑已经很难记住所有人的联系方式还有其各做附加信息。通讯录系统能方便用户的需求,满足用户迅速、准确的查找修改或者删除联系人信息,把各个联系人信息以文件保存。本文介绍了c++编写简易通讯录管理:系统的分析,功能模块的设计,系统的流程图及运行界面。此系统的主要管理的信息由:联系人的姓名、性别、电话号码,加深对c++语言程序设计的理解,提高算法设计的能力,锻炼编程的能力。用c语言编程一个通讯录管理系统软件,要求能实现通讯录管理系统中的增加信息,删除信息,显示通讯里的所有信息,按名字查询信息,保存通讯录,退出系统。。 2.需求分析 2.1 用例图 通讯录管理系统的用例图如下图所示: 图2.1 用例图

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

课程设计说明书(论文)课程名称 C++程序设计实践 题目通信录管理系统 专业软件工程班级 学号姓名 xx 起止日期 指导教师赵新慧成绩 辽宁石油化工大学计算机与通信工程学院

摘要 本次课程设计任务是通过编写一个通信录管理系统,学习用Visual?C++?开发简单的管理系统。采用Visual?C++?软件为主要开发工具。巩固和加深学生对C++课程的基本知识的理解和掌握,掌握C++编程和程序调试的基本技能,利用C++进行简单软件设计的基本思路和方法,提高运用C++解决实际问题的能力,掌握书写程序设计说明文档的能力使用计算机进行信息管理。实现通信录的管理功能(添加、删除、排序)、按姓名查询的功能,以及把联系人资料保存在文件中,将文件中内容读出来。使用计算机进行系统管理,不仅提高了工作效率,而且大大提高了其安全性,尤其对于复杂的信息管理,计算机能充分地发挥它的优越性,通信录管理系统是每个人不可缺少的部分,在课程设计中,系统开发平台为Windows XP,程序设计语言采用Visual C++,在程序设计中,运用了面向对象解决问题的方法。程序通过调试运行,初步实现了设计目标。 Abstract The 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 only

个人通讯录管理系统C语言源程序优秀版

个人通讯录管理系统C语言源程序优秀版 Last revision date: 13 December 2020.

#i n c l u d e/*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件 #include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/ void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/

通讯录管理系统实现与设计

武汉理工大学 毕业设计(论文) 通讯录管理系统实现与设计 学院(系): 专业班级: 学生姓名: 指导教师:

目录 第一章绪论 (2) 1.1课题简介 (2) 1.2开发的意义 (2) 1.3团队构成 (3) 第二章开发环境及实现技术 (4) 2.1开发环境 (4) 2.2开发工具简介 (4) 第三章系统设计 (6) 3.1概要设计 (6) 3.2详细设计 (7) 第四章数据库设计 (9) 4.1数据库A CCESS简介 (9) 4.2数据库需求分析 (10) 4.3数据库需求分析 (10) 第五章详细设计 (12) 5.1系统登录模块的设计与实现 (12) 5.2主界面的设计与实现 (16) 5.3单人资料模块的设计与实现 (19) 5.4模糊查询模块的设计与实现 (22) 5.5全体资料模块的设计与实现 (25) 5.6用户注册模块的设计与实现 (26) 5.7用户维护模块的设计与实现 (28) 5.8备忘提醒模块的设计与实现 (29) 第六章系统使用说明 (33) 6.1使用说明 (33) 6.2运行环境 (33) 第七章设计心得 (34) 参考文献 (35)

第一章绪论 1.1课题简介 通讯录管理系统是每一个用户管理通讯录的不可缺少的一个管理信息系统,它的内容对于用户的管理者来说是至关重要的,所以通讯录管理系统应该能够为每一个用户的管理者提供充足的信息和快捷的查询手段,大大的方便用户合理的管理通讯录。 随着科学技术的不断提高,计算机科学日渐成熟,网上通讯工具的迅速发展,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对通讯录进行管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高通讯录管理的效率,也是用户理财的科学化、正规化管理,与先进科学技术接轨的重要条件。 因此,开发这样一套管理软件成为很有必要的事情,对于我们即将计算机专业毕业的学员来说,也是一次将计算机应用于现实管理的一次很有意义的实践活动。 1.2开发的意义 计算机已经成为我们学习和工作的得力助手,使用其可方便的管理通讯录 今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域。 现在我国的通讯录管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。 我作为一个计算机应用专业的毕业生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我所学的知识编制出一个实用的程序来帮助用户进行财务管理。 开发这一系统的好处大约有以下几点: 第一、可以存储大量的通讯录信息,安全、高效;

通讯录管理系统(C语言)

说明 1、设计的目的 1)复习巩固C语言的基础知识,进一步加深对C语言编程的理解和掌握;2)利用所学知识,理论和实际结合,利用资源,采用模块化的结构,使用模仿修改自主设计相结合的方法,锻炼学生综合分析解决实际问题的编程能力;3)培养学生在项目开发中团队合作精神、创新意识及实战能力。 2、设计的任务 根据学生的实际情况,进行分组选题。主要的课程设计题目如下(学生也可自主选题): 1、图书管理系统 2、学生信息管理系统 3、学生成绩管理系统 4、学生通讯录管理系统 5、职工信息管理系统 6、设计简单的计算器 课程设计采用学生自主设计和指导老师辅导相结合的方式。 3、设计要求与设计报告 设计要求: 1、任选上述题目之一,或自选题目。 2、模块化的程序设计 3、锯齿形的程序书写格式。 4、必须通过编译连接运行 设计报告: 1、设计目的和任务 2、总体设计:包括程序设计组成框图、流程图。 3、详细设计:包括模块功能说明:函数功能、入口及出口参数说明,函数调用关系描述等。 4、调试与测试:包括调试方法,测试结果分析与讨论,测试过程中遇到的主要问题及采取的解决措施。 5、源程序清单和执行结果:清单中应有足够的注释。

设计目的和任务 (主要介绍设计的任务,为什么要设计,设计要达到什么样的目的。) 设计目的:(1)基本掌握面向过程程序设计的基本思路和方法; (2)达到熟练掌握C语言的基本知识和技能; (3)能够利用所学的基本知识和技能,解决简单的程序设计问题 程序功能:(1).学生基本信息及成绩所选科目成绩的录入。 (2).基本信息的查询(分系、班级;分科目)与修改。 (3).对每系或每班各科成绩进行分析(即求单科平均成绩、及格率和优秀率); (4).对所开课程的成绩分析(求其平均成绩,最高分和最低分); (5).对学生考试成绩进行排名; 目录 一、总体设计 (3) 二、详细设计 (4) 三、调试与测试 (5) 四、源程序清单和执行结果 (6) 五、建议和体会 (7) 六、参考文献 (8)

通讯录管理系统设计说明书

通讯录管理系统设计说明书 系统概述: 随着毕业的来临,我们就将面临分离。为了能在毕业后,能够方便联系我们在大学其间的同学朋友,通讯录就是一个可以帮我们方便查找同学朋友的工具。 随着计算机的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机来帮助人们记住这些事情,极其简便。这就需要有一个使用的通讯录管理系统,用户可以方便的通过自己电脑的通讯录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。 通讯录管理系统是一个专门针对储存用户联系方式以及一些简单个人信息的实用管理系统,它方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。 关键字:插入,删除,查找,输出。 需求分析: 调查用户需求: 随着同学们的即将毕业,蹋出社会,交际难免地逐渐扩大,与外界联系将更为广泛和密切,传统的手工通讯录、地址簿已经难以满足快节奏、高效率的现代生活的需求。经常发生要在几十甚至上百张名片中找出某一张名片的情况,若由手工完成效率十分低。当交际扩大后,传统的手工通讯录非常不方便,不易查询、修改、存放,不易保密,容易遗失。 由计算机带来管理庞大而繁杂的通讯录是非常合适的,不仅查询和修改方便,并且效率高,速度快,完全能够满足现代化交际活动的要求,同时也更方便同学们联系交往。 本系统专门用于个人通讯信息管理的小型应用软件,主要提供个人通讯信息的登记、修改、浏览、查询和打印等功能。

1.用户的主要信息需求: ①对个人通讯信息资料进行登记、修改、浏览。 ②对个人通讯信息资料进行按姓名和学号查询。 ③对个人通讯信息资料进行打印输出。 系统功能设计与分析: 1.功能模块图 2.功能设计 (1)新建通讯录功能 增加一个新的记录,并保存通讯录; (2)搜索通讯录功能

基于c语言的通讯录管理系统设计与实现

基于c语言的通讯录管 理系统设计与实现 Document number【AA80KGB-AA98YT-AAT8CB-2A6UT-A18GG】

《高级语言程序设计》 ——基于c语言的通讯录管理系统的 设计与实现 姓名:王炳旭 学号: 1216F0610119 指导老师:孟芸 系别:信息工程系 专业班级:计科F1201班

《高级语言程序设计》课程设计任务书 设计内容及要求: 1.设计内容 输入功能:记录信息并保存文件中。 显示功能:输出文件中所有信息。 查找功能:查询所需通讯信息。 删除功能:删除无用信息。 2.设计要求 建立通讯录信息,信息包含姓名、性别、班级、电话,保存在文件中; 能够输出文件中所有通讯录信息。 能够提供按姓名、班级或性别查询信息; 能够提供按姓名删除通讯录信息的功能; 时间安排: 九月:选择自己所要设计的程序,查阅书籍、网上查询,收集所需资料解决疑惑。 十月:开始编写程序,不断分析。 十一月:代码实现,程序能够运行。 十二月:写报告,完成课程设计。 《高级语言程序设计》课程设计教师评阅成绩表

《高级语言程序设计》课程设计承诺书

目录 1.引言----------------------------------------------------------------------- 2 1.1设计内容------------------------------------------------------------- 2 1.2设计任务及具体要求--------------------------------------------------- 2 1.3系统环境------------------------------------------------------------- 3 2.总体设计------------------------------------------------------------------- 3 2.1系统功能简介--------------------------------------------------------- 3 2.2总体程序框图--------------------------------------------------------- 3 2.3各个模块之间的主要关系----------------------------------------------- 4 3.详细设计------------------------------------------------------------------- 4 3.1各个模块的程序流程图及运行界面--------------------------------------- 4 3.2关键代码分析说明----------------------------------------------------- 8 3.3程序使用说明--------------------------------------------------------- 9 4.总结----------------------------------------------------------------------- 9 致谢------------------------------------------------------------------------- 9 参考文献--------------------------------------------------------------------- 9 附录------------------------------------------------------------------------ 10 1.引言 当今时代,计算机已经成为人们生活中不可或缺的一部分,它打破了地域时间限制,改变了人们的工作和生活方式。通讯录系统能方便用户的需求,满足用户迅速、准确的查找修改或者删除联系人信息,把各个联系人信息以文档保存。本文介绍了简易通讯录管理系统在VC++6.0环境下的实现过程:系统的分析,功能模块的设计,系统的流程图及运行界面。此系统的主要管理的信息

相关文档
最新文档