搜档网
当前位置:搜档网 › 学生手机通信录管理系统

学生手机通信录管理系统

学生手机通信录管理系统
学生手机通信录管理系统

程序设计报告书( 2012 / 2013 学年第一学期)

题目:通讯录管理系统

专业

学生姓名

班级学号

指导教师

指导单位

日期

一、课题内容和要求

该课题要求设计一个简单、实用的通信录管理程序,主要功能包括通信录数据的录入、查找、修改、删除、排序、显示等。所有通信录数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程和实际结合起来,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。

二、需求分析

系统功能模块图:

添加:可以添加通讯录记录,依次输入序号,姓名,简拼,性别,工作单位,地址,电话,手机,电子邮件,备注后,会提示是否继续添加。

查询:可以选择用序号、姓名、简拼、电话方式查询

修改:先查找,再修改。若查找出多条记录,则进一步提示用户选择记录的序号,再修改

删除:输入欲删除的那个人的名字后,删除他(她)的记录内容

排序:可按姓名、简拼等排序。要求排序后,记录的序号也要重新编排

显示:可以以表格形式输出所有通讯录里的记录

保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件

读入:从文件中读入通信录数据。

界面功能要求:

(1)采用友好的字符界面,实现一个功能控制菜单。

(2)每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。

三、概要设计

(1)主要结构体:

typedef struct

{

char score; /*序号*/

char name[10]; /*姓名*/

char jianpin[50]; /*简拼*/

char sex[3]; /*性别*/

char company[20]; /*工作单位*/

char adds[20]; /*地址*/

char tel[15]; /*电话*/

char num[15]; /*手机*/

char email[20]; /*电子邮件*/

char remark[30]; /*备注*/

}Person;

(2).工作流程图:

1.添加:添加通讯录记录

N

2.查询:查询通讯录记录

先选择查询方式,以姓名查询方式为例

3.修改:修改通讯录记录

4.删除:删除通讯录记录

5.显示:显示通讯录记录

四、源程序代码

#include #include #include #include

typedef struct { char score; /*序号*/ char name[10]; /*姓名*/ char jianpin[50]; /*简拼*/ char sex[3]; /*性别*/ char company[20]; /*工作单位*/ char adds[20]; /*地址*/ char tel[15]; /*电话*/ char num[15]; /*手机*/ char email[20]; /*电子邮件*/ char remark[30]; /*备注*/ }Person;

Person pe[80];

int menu_select()

{

char c;

do{

system("cls");

printf("\t\t *欢迎使用通讯录* \n");

printf("\t\t┌───────┐\n");

printf("\t\t│ 1. 添加记录│\n");

printf("\t\t│ 2. 显示记录│\n");

printf("\t\t│ 3. 删除记录│\n");

printf("\t\t│ 4. 查询记录│\n");

printf("\t\t│ 5. 排列顺序│\n");

printf("\t\t│ 6. 修改记录│\n");

printf("\t\t│ 7. 保存记录│\n");

printf("\t\t│ 8. 文件读入│\n");

printf("\t\t│ 0. 退出程序│\n");

printf("\t\t└───────┘\n");

printf("\t\t请您选择(0-8):");

c=getchar();

}while(c<'0'||c>'8');

return(c-'0');

}

int Input(Person per[],int n)

{

int i=0;

char sign,x[10];

while(sign!='n'&&sign!='N')

{

printf("\t序号:");

scanf("\t%d",&per[n+i].score);

printf("\t姓名:");

scanf("\t%s",per[n+i].name);

printf("\t简拼:");

scanf("\t%s",per[n+i].jianpin);

printf("\t性别:");

scanf("\t%s",per[n+i].sex);

printf("\t工作单位:");

scanf("\t%s",per[n+i].company);

printf("\t地址:");

scanf("\t%s",per[n+i].adds);

printf("\t电话:");

scanf("\t%s",per[n+i].tel);

printf("\t手机:");

scanf("\t%s",per[n+i].num);

printf("\t电子邮件:");

scanf("\t%s",per[n+i].email);

printf("\t备注:");

scanf("\t%s",per[n+i].remark);

gets(x);

printf("\n\t是否继续添加?(Y/N)");

scanf("\t%c",&sign);

i++;

}

return(n+i);

}

void Display(Person per[],int n)

{

int i;

printf("------------------------------------------------------------------------------------------------\n"); /*格式*/

printf("序号姓名简拼性别工作单位地址电话手机电子邮件备注 \n");

printf("------------------------------------------------------------------------------------------------\n");

for(i=1;i

{

printf("%-3d%-10s%-10s%-5s%-10s%-10s%-13s%-13s%-10s%-10s\n",per[i-

1].score,per[i-1].name,per[i-1].jianpin,per[i-1].sex,per[i-1].company,per[i-1].adds,per[i-1].tel,per[i-1].num,per[i-1].email, per[i-1].remark);

if(i>1&&i%10==0)

{

printf("\t-----------------------------------\n");

printf("\t");

system("pause");

printf("\t-----------------------------------\n");

}

}

printf("----------------------------------------------------------------------\n");

system("pause");

}

int Delete_a_record(Person per[],int n)

{

char s[20];

int i=0,j;

printf("\t请输入想删除记录中的名字:");

scanf("%s",s);

while(strcmp(per[i].name,s)!=0&&i

if(i==n)

{

printf("\t通讯录中没有此人!\n");

return(n);

}

for(j=i;j

{

strcpy(per[j].name,per[j+1].name);

strcpy(per[j].jianpin,per[j+1].jianpin);

strcpy(per[j].sex,per[j+1].sex);

strcpy(per[j].company,per[j+1].company);

strcpy(per[j].adds,per[j+1].adds);

strcpy(per[j].num,per[j+1].num);

strcpy(per[j].tel,per[j+1].tel);

strcpy(per[j].email,per[j+1].email);

strcpy(per[j].remark,per[j+1].remark);

per[j].score=per[j+1].score;

}

printf("\t\t\t删除成功\n");

return(n-1);

}

void Query_a_record(Person per[],int n)

{

int m;

printf("\t\n请选择查询方式:\n");

printf("\t┌──────┐\n");

printf("\t│1------姓名│\n");

printf("\t│2------简拼│\n");

printf("\t│3------电话│\n");

printf("\t│4------返回│\n");

printf("\t└──────┘\n");

printf("请选择:");

scanf("%d",&m);

while(m!=1&&m!=2&&m!=3&&m!=4)

{

printf("输入错误,请重新选择:");

scanf("%d",&m);

}

if(m==1)

{

char s[20];

int i=0;

printf("\t请输入想查询的姓名:");

scanf("\t%s",s);

while(strcmp(per[i].name,s)!=0&&i

if(i==n)

{

printf("\t通讯录中没有此人!\n");

return;

}

printf("\t序号: %d\n",per[i].score);

printf("\t简拼: %s\n",per[i].jianpin);

printf("\t性别: %s\n",per[i].sex);

printf("\t工作单位: %s\n",per[i].company);

printf("\t通讯地址: %s\n",per[i].adds);

printf("\t电话号码: %s\n",per[i].num);

printf("\t电子邮箱: %s\n",per[i].email);

printf("\t备注: %s\n",per[i].remark);

} ;

if(m==2)

{

char s[20];

int i=0;

printf("\t请输入想查询的简拼:");

scanf("\t%s",s);

while(strcmp(per[i].jianpin,s)!=0&&i

if(i==n)

{

printf("\t通讯录中没有此人!\n");

return;

}

printf("\t序号: %d\n",per[i].score);

printf("\t姓名: %s\n",per[i].name);

printf("\t性别: %s\n",per[i].sex);

printf("\t工作单位: %s\n",per[i].company);

printf("\t通讯地址: %s\n",per[i].adds);

printf("\t电话号码: %s\n",per[i].num);

printf("\t电子邮箱: %s\n",per[i].email);

printf("\t备注: %s\n",per[i].remark);

} ;

if(m==3)

{

char s[20];

int i=0;

printf("\t请输入想查询的电话:");

scanf("\t%s",s);

while(strcmp(per[i].num,s)!=0&&i

if(i==n)

{

printf("\t通讯录中没有此人!\n");

return;

}

printf("\t序号: %d\n",per[i].score);

printf("\t姓名: %s\n",per[i].name);

printf("\t简拼: %s\n",per[i].jianpin);

printf("\t性别: %s\n",per[i].sex);

printf("\t工作单位: %s\n",per[i].company);

printf("\t通讯地址: %s\n",per[i].adds);

printf("\t电子邮箱: %s\n",per[i].email);

printf("\t备注: %s\n",per[i].remark);

} ;

}

void SelectSort(Person per[],int n)

{

int i,j,flag;

Person temp; /*临时变量做交换数据用*/

int m;

printf("\t\n请选择排序方式:\n");

printf("\t┌────────┐\n");

printf("\t│ 1------姓名│\n");

printf("\t│ 2------简拼│\n");

printf("\t│ 3------电话│\n");

printf("\t│ 4------返回│\n");

printf("\t└────────┘\n");

printf("请选择:");

scanf("%d",&m);

while(m!=1&&m!=2&&m!=3&&m!=4)

{

printf("输入错误,请重新选择:");

scanf("%d",&m);

}

if(m==1)

{

for(i=0;i

{

flag=0; /*设标志判断是否发生过交换*/

for(j=0;j

if((strcmp(per[j].name,per[j+1].name))>0) /*比较大小*/

{

flag=1;

strcpy(https://www.sodocs.net/doc/d113953746.html,,per[j].name); /*交换记录*/

strcpy(temp. abbreviation,per[j].jianoin);

strcpy(temp.sex,per[j].sex);

strcpy(https://www.sodocs.net/doc/d113953746.html,pany,per[j].company);

strcpy(temp.adds,per[j].adds);

strcpy(temp.tel,per[j].tel);

strcpy(temp.num,per[j].num);

strcpy(temp.email,per[j].email);

strcpy(temp.remarks,per[j].remark);

strcpy(per[j].name,per[j+1].name);

strcpy(per[j]. abbreviation,per[j+1]. jianpin);

strcpy(per[j].sex,per[j+1].sex);

strcpy(per[j].company,per[j+1].company);

strcpy(per[j].adds,per[j+1].adds);

strcpy(per[j].tel,per[j+1].tel);

strcpy(per[j].num,per[j+1].num);

strcpy(per[j].email,per[j+1].email);

strcpy(per[j].remarks,per[j+1].remark);

strcpy(per[j+1].name,https://www.sodocs.net/doc/d113953746.html,);

strcpy(per[j+1]. abbreviation,temp. jianpin);

strcpy(per[j+1].sex,temp.sex);

strcpy(per[j+1].company,https://www.sodocs.net/doc/d113953746.html,pany);

strcpy(per[j+1].adds,temp.adds);

strcpy(per[j+1].tel,temp.tel);

strcpy(per[j+1].num,temp.num);

strcpy(per[j+1].email,temp.email);

strcpy(per[j+1].remarks,temp.remark);

}

if(flag==0)break; /*如果标志为0,说明没有发生过交换循环结束*/

}

}

if(m==2)

{

for(i=0;i

{

flag=0; /*设标志判断是否发生过交换*/

for(j=0;j

if((strcmp(per[j]. jianpin,per[j+1]. jianpin))>0) /*比较大小*/

{

flag=1;

strcpy(https://www.sodocs.net/doc/d113953746.html,,per[j].name); /*交换记录*/

strcpy(temp. jianpin,per[j]. jianpin);

strcpy(temp.sex,per[j].sex);

strcpy(https://www.sodocs.net/doc/d113953746.html,pany,per[j].company);

strcpy(temp.adds,per[j].adds);

strcpy(temp.tel,per[j].tel);

strcpy(temp.num,per[j].num);

strcpy(temp.email,per[j].email);

strcpy(temp.remarks,per[j].remark);

strcpy(per[j].name,per[j+1].name);

strcpy(per[j]. abbreviation,per[j+1].jianpin);

strcpy(per[j].sex,per[j+1].sex);

strcpy(per[j].company,per[j+1].company);

strcpy(per[j].adds,per[j+1].adds);

strcpy(per[j].tel,per[j+1].tel);

strcpy(per[j].num,per[j+1].num);

strcpy(per[j].email,per[j+1].email);

strcpy(per[j].remarks,per[j+1].remark);

strcpy(per[j+1].name,https://www.sodocs.net/doc/d113953746.html,);

strcpy(per[j+1]. abbreviation,temp. jianpin);

strcpy(per[j+1].sex,temp.sex);

strcpy(per[j+1].company,https://www.sodocs.net/doc/d113953746.html,pany);

strcpy(per[j+1].adds,temp.adds);

strcpy(per[j+1].tel,temp.tel);

strcpy(per[j+1].num,temp.num);

strcpy(per[j+1].email,temp.email);

strcpy(per[j+1].remarks,temp.remark);

}

if(flag==0)break; /*如果标志为0,说明没有发生过交换循环结束*/

}

}

if(m==3)

{

for(i=0;i

{

flag=0; /*设标志判断是否发生过交换*/

for(j=0;j

if((strcmp(per[j].tel,per[j+1].tel))>0) /*比较大小*/

{

flag=1;

strcpy(https://www.sodocs.net/doc/d113953746.html,,per[j].name); /*交换记录*/

strcpy(temp. abbreviation,per[j]. jianpin);

strcpy(temp.sex,per[j].sex);

strcpy(https://www.sodocs.net/doc/d113953746.html,pany,per[j].company);

strcpy(temp.adds,per[j].adds);

strcpy(temp.tel,per[j].tel);

strcpy(temp.num,per[j].num);

strcpy(temp.email,per[j].email);

strcpy(temp.remarks,per[j].remark);

strcpy(per[j].name,per[j+1].name);

strcpy(per[j]. abbreviation,per[j+1]. jianpin);

strcpy(per[j].sex,per[j+1].sex);

strcpy(per[j].company,per[j+1].company);

strcpy(per[j].adds,per[j+1].adds);

strcpy(per[j].tel,per[j+1].tel);

strcpy(per[j].num,per[j+1].num);

strcpy(per[j].email,per[j+1].email);

strcpy(per[j].remarks,per[j+1].remark);

strcpy(per[j+1].name,https://www.sodocs.net/doc/d113953746.html,);

strcpy(per[j+1]. abbreviation,temp. jianpin);

strcpy(per[j+1].sex,temp.sex);

strcpy(per[j+1].company,https://www.sodocs.net/doc/d113953746.html,pany);

strcpy(per[j+1].adds,temp.adds);

strcpy(per[j+1].tel,temp.tel);

strcpy(per[j+1].num,temp.num);

strcpy(per[j+1].email,temp.email);

strcpy(per[j+1].remarks,temp.remark);

}

if(flag==0)break; /*如果标志为0,说明没有发生过交换循环结束*/

}

}

printf("排序成功\n"); /*显示排序成功*/

}

void Change(Person per[],int n)

{

char s[20];

int i=0;

int m;

printf("\t\n请选择修改内容:\n");

printf("\t┌──────┐\n");

printf("\t│1------姓名│\n");

printf("\t│2------简拼│\n");

printf("\t│3------电话│\n");

printf("\t│4------返回│\n");

printf("\t└──────┘\n");

printf("请选择编号:");

scanf("%d",&m);

while(m!=1&&m!=2&&m!=3&&m!=4)

{

printf("输入错误,请重新选择:");

scanf("%d",&m);

}

int count = 0;

if(m==1)

{

int i=0;

printf("\t请输入想修改的记录中的姓名:");

scanf("%s",s);

printf("---------------------------------------------------------------------------------\n"); /*格式*/

printf("序号姓名简拼性别工作单位地址电话手机电子邮件备注\n");

printf("---------------------------------------------------------------------------------\n");

for (int t = 0; t < n; t++) {

if (strcmp(per[t].name,s)==0) {

count ++;

printf("%-6d%-6s%-6s%-6s%-10s%-10s%-8s%-8s%-12s%-

10s%\n",per[t].score,per[t].name,per[t].jianpin,per[t].sex,per[t].company,per[t].adds,per[ t].tel,per[t].num,per[t].email,per[t].remark);

}

}

printf("---------------------------------------------------------------------------------\n");

if (count > 1)

{

printf("查到多条数据,请输入序号:");

m = 5;

}

else

{

while(strcmp(per[i].name,s)!=0&&i

if(i==n)

{

printf("\t通讯录中没有此人!\n");

return;

}

//printf("\t序号:");

//scanf("\t%d",&per[i].score);

个人通讯录管理系统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) /*只写方式判断*/

学生通讯录管理系统

学生通讯录管理系统

————————————————————————————————作者:————————————————————————————————日期:

“学生通讯信息记录系统”的设计与实现 一、设计要求 1.问题的描述 “学生通讯信息记录系统”是为了实现快速的对学生信息进行录入、删除、查找、显示。 各个功能靠函数实现。 2.需求分析 (1)应该包括以下功能:输入信息、显示信息、查找以姓名作为关键字、删除信息(2)作为一个完整的系统,应具有友好的界面和较强的容错能力 二、概要设计 1.主界面设计 2.储存结构设计 本系统主要采用链表类型来表示储存“学生信息记录系统”中的信息。程序中定义了address结构。其中,包括学生的姓名、宿舍信息和学号。 3.系统功能的设计 1) 输入信息——enter(); 2) 显示信息———display( ); 3) 查找以姓名作为关键字———search( ); 4) 删除信息———delete( ); 三、模块设计 1.模块设计 本成绩包含两个模块:主程序模块和链表操作模块。 2.系统的程序及功能设计

系统的功能主要靠函数的功能的实现的,以下是实现各功能的函数: void enter(); /*函数声明*/ void search(); void save(); void load(); void list(); void ddelete(struct address **start,struct address **last); void insert(struct address *i,struct address **start, struct address **last); void inputs(char *,char *,int); void display(struct address *); int menu_select(void); 四、详细设计 1.数据类型定义 2.struct address{ /*定义结构*/ 3. char name[10]; 4. char street[50]; 5. char city[10]; 6. char state[15]; 7. char eip[7]; 8. struct address *next; /*后继指针*/ 9. struct address *prior; /*前驱指针*/ 10.};系统主要子程序详细设计 (1)插入学生信息 void enter() /*输入函数,本函数循环输入资料,当输入姓名为空时退出*/ { struct address *info; /*定义当前结点*/ for(;;) { info=(struct address *)malloc(sizeof(struct address)); /*为当前结点分配空间*/ if(!info) { printf("\n Out of memory"); exit(0); /*如果分配空间失败,退出程序*/ } printf("输入空姓名结束:\n"); inputs("请输入姓名:",info->name,10); if(!info->name[0]) break; /*如果输入姓名为空,结束循环*/ inputs("请输入院系:",info->street,50);

《面向对象程序设计》课程设计报告:同学通讯录管理程序

目录 1.设计题目................................. 错误!未定义书签。 2.设计目的和内容........................... 错误!未定义书签。 设计目的................................... 错误!未定义书签。 设计内容................................... 错误!未定义书签。 3.基本功能描述............................. 错误!未定义书签。 4.设计思路................................. 错误!未定义书签。 5.软件设计................................. 错误!未定义书签。 设计步骤................................... 错误!未定义书签。 界面设计................................... 错误!未定义书签。 关键功能的实现............................. 错误!未定义书签。 添加记录................................ 错误!未定义书签。 删除记录................................ 错误!未定义书签。 选中记录................................ 错误!未定义书签。 确认修改................................ 错误!未定义书签。 保存记录................................ 错误!未定义书签。 退出.................................... 错误!未定义书签。 6.结论与心得体会........................... 错误!未定义书签。 7.参考文献................................. 错误!未定义书签。 8.附录..................................... 错误!未定义书签。 调试报告及测试结果 ......................... 错误!未定义书签。

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语言程序设计 课程设计报告 个人通讯录管理系统设计 专业__网络工程___ _____ 班级___(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)课程设计 专业班级学号 姓名完成日期指导教师: 1.程序设计说明书 【设计题目】班级通讯录管理系统 【问题描述】 信息1002班上学生的通讯基本信息包含姓名、电话号码、QQ号和宿舍号。对信息1002班学生的基本通讯信息进行统一整理,并可以按电话号码或姓名等查到学生个人基本通讯信息。可以显示所有的通讯记录,并对现有的通讯记录进行修改和增删等处理。 【基本要求】 1.通过此软件可以直接录入各个学生的基本通讯信息,并且会将所有信息自动保存到磁盘 上。 2.通过此软件可以直接对已录入的各个学生的通讯基本信息进行修改,并且修改完成后会将 更改后的信息情况自动保存到原磁盘文件中。 3.通过此软件可以直接对信息1002班每个同学的基本信息情况进行查询。 【算法思想】 1.根据要求,通讯录数据以文本文件存放在文件中: 2.需要提供文件的输入输出的等操作: 3.还需要保存记录已进行修改,删除,查找的操作: 4.另外还需提供键盘式选择菜单实现功能的选择。 【总体设计】 图1系统功能模块图 【详细设计】 主函数 主函数设计要求简洁,只提供部分提示语和函数的调用 【程序】

图2.主函数流程图 Voidmenu()/*主界面*/ { intn,w1; voidenter();voidadd();voidmodify();voidbrowse();voiddelete();voidsearch(); do { puts("\t*******菜单**************\t\n\n"); puts("\t\t\t\t1.新建联系人"); puts("\t\t\t\t2.添加联系人"); puts("\t\t\t\t3.修改"); puts("\t\t\t\t4.删除"); puts("\t\t\t\t5.浏览"); puts("\t\t\t\t6.查找"); puts("\t\t\t\t7.退出"); puts("\n\n\t*****信息1002班通讯录*************\t\n"); printf("请选择服务种类(1-7):[]\b\b"); scanf("%d",&n); if(n<1||n>7) {w1=1;getchar();} elsew1=0; }while(w1==1); switch(n) { case1:enter();break;/*输入模块*/ case2:add();break;/*添加模块*/ 【模块流程图】 main函数

基于Android平台的手机通讯录管理系统

第一章绪论 1.1 项目研究背景 经过多年的发展,随着第三代网络的使用及四代网络的即将来了呢,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。Google与包括HTC、摩托罗拉、三星、联想等在内的三十多家技术和无线应用的领军企业组成的开发联盟为此于2007年11月退出了一份专为移动设备设计的软件平台——Android OS。 Android 是一套真正意义上的移动性设备综合平台,它包括操作系统、中间件和一些关键的平台应用。Android的Java程序运行环境包含一组Java核心函数库及Dalvik虚拟机,它们有效地优化额Java程序的运行过程。Android 系统平台基于优化了的Linux内核,它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机硬件的连接层。 Abdroid平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还可以是运营商能非常方便地制定特色化的产品,因此,它具有很大的市场发展潜力。 1.2 项目研究的目的及意义 随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。在Google和Android手机联盟的共同推动下,Android在众多手机操作系统中脱颖而出,受到广大消费者的欢迎。 手机通讯录作为手机的基本功能之一,每天我们都在频繁地使用着。根据手机功能的不断加强与完善,手机通讯录对于人们的意义,已经不仅仅像记事簿一样显示通讯地址,而是向着个性化、人性化的方向发展。通讯录从无到有,从英文到中文,经过了十几年的发展历程,今后的发展趋势就是从通讯录发展为名片夹,也就是一个人名下,可以储存座机、手机、单位、地址、电子邮箱等内容,这种名片夹在电话薄的基础上,大大丰富了内容,同时结构也发生了革命性的的变化,而且随着手机的发展,相信更优秀的通讯录会越来越受到社会各层认识的喜爱。 1.3系统主要内容与实现方式

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

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

学生通讯录管理系统的设计与实现 问题描述: 纸质的通讯录已经不能满足实际需求,容易丢失,查找困难等问题是纸质通讯录所不能克服的缺点。“学生通讯录管理系统”是为了帮助老师、同学,或者其它一些需要使用的通讯录的人员进行管理和应用的一种应用程序。 需求分析: 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)

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

C课程设计通讯录管理 系统 文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

课程设计说明书(论文)课程名称 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++

通讯录管理系统

淮北师范大学 软件系列课程设计 通讯录管理系统 学院计算机科学与技术学院学生姓名陈文超 学号20081201011 指导教师姓名陈美荣 2010年06月20日

目录 摘要........................................................ 1.绪论....................................................... 1.1 开发背景简介......................................... 1.2 管理系统的发展趋势……………………………………………… 1.2 目的目的和意义........................................ 2. 开发工具的选择............................................ 3.系统分析................................................... 3.1题目需求分析............................................ 3.2系统功能分析............................................ 4.系统总体规划............................................... 4.1概要设计............................................... 5.系统设计................................................... 5.1系统操作流程图.......................................... 5.2系统详细设计............................................ 6.调试....................................................... 7.全文总结................................................... 8.致谢..................................................... 参考文献.....................................................

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)添加功能。在该功能里,用户可以添加自己的常用联系人和分组信息。

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

学生通讯录管理系统的设计与实现 问题描述: 纸质的通讯录已经不能满足实际需求,容易丢失,查找困难等问题是纸质通讯录所不能克服的缺点。“学生通讯录管理系统”是为了帮助老师、同学,或者其他一些需要使用的通讯录的人员进行管理和应用的一种应用程序。 需求分析: 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判断输入进行各种操作,1进行建立信息

个人通讯录管理软件功能设计说明书

个人通讯录管理软件功能 设计说明书 一.系统名称 个人通讯录管理 二.系统分析 2.1系统需求分析 个人通讯录模型可以参考流行的腾讯QQ聊天软件,同时结合手机里面的通讯录进行设计。在此阶段初步确定系统的要实现的基本功能即联系人和分组的增删改、联系人信息的多种查询以及数据库设计构型即采用哪种数据库、大致由哪些基本表组成。 2.2概念结构设计 采用E—R图的设计方法进行数据库的概念结构 由图可得:数据库主要是联系人表,表的基本结构如下: 联系人表(、职务、职称、工作单位、通讯地址、邮政编码、单

位、住宅、分编特征) 联系人表中,主键是分编特征; 2.3逻辑结构设计 在完成以上分析后,要对数据库进行表结构的设计,这里仅以表字段数据结构的为重点。 各表列出对应子段名,各字段长度,是否Null、默认值见其下图,根据数据库基础知识分析,各表设计都达到了第三式,符合数据库的设计规。 联系人表:,xm;职务,zw;职称,zc;工作单位,gzdw;通讯地址,xxdz;邮政编码,yzbm;单位,dwdh;住宅,zzdh;分编特征,fbtz; 表的索引,主键,外键关系约束如下: 三.系统主要功能及界面设计 3.1功能简介: 1、该软件应具有对通讯录信息的增加、删除、保存、查询、排序、

打印等功能。 2、以单文档界面和多文档界面两种形式实现。 3、该软件应包括数据窗口技术、用回车键实现TAB键功能、多条件查询、多文档界面的实现、窗口之间的参数传递、结构的应用、图片的使用等主要技术 3.1.2信息查询模块: 1该功能模块包含查找方式是:按照查找,按照分编特征查找,按照地址查找。只要输入,分编特征,地址,就可以立马找到联系人的信息。 2查找的优势:在查找的下方可以清晰的看到查找的联系人的信息在通讯录中的具体位置,包括其所在的行和列。 3.1.3.系统管理模块:该功能模块包含: 1新增联系人信息,包括,职务,职称,工作单位,通讯地址,邮政编码等。 2打印:打印联系人相关信息包括,职务,职称,工作单位,通讯地址,邮政编码等。 3删除:删除联系人相关信息包括,职务,职称,工作单位,通讯地址,邮政编码等。 4设置:设置联系人信息即更改其信息包括,职务,职称,工作单位,通讯地址,邮政编码等。 5保存通讯录信息包括,职务,职称,工作单位,通讯地址,邮政编码等。

个人通讯录管理(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)联系人信息录入、添加功能:包括手机号(此处用短号,5位,不能重复)、姓名、家庭住址的录入和添加。 (2)联系人信息查询功能:能①按手机号进行查询。②按联系人姓名进行查询。 (3)排序:①能按手机号升序进行排序;②能按姓名进行升序排序,姓名相同时按手机号从小到大进行排序 (4)联系人信息的修改、删除功能:①按手机号进行联系人信息的修改和删除。 ②按姓名进行联系人信息的修改和删除,多个姓名时,再指定具体的号码。 (5)统计功能:统计自己的联系人有多少个。 三、课题设计的基本思想,原理和算法描述 (1)本次课程设计题目为简易手机通讯录管理系统,主要运用到线性表中顺序表的相关知识,以及顺序查找的思想和冒泡排序算法。 (2)界面设计 //菜单函数 int menu() { int c; printf("\n\n\t☆☆☆☆☆☆☆手机通讯录信息管理系统☆☆☆☆☆☆☆☆\n\n"); printf("******************************************************************* ***\n"); printf(" 1.添加联系人信息\n"); printf(" 2.查询联系人信息\n"); printf(" 3.对联系人信息进行排序\n"); printf(" 4.修改联系人信息\n"); printf(" 5.删除联系人信息\n"); printf(" 6.统计联系人个数\n"); printf(" 0.退出信息管理系统\n"); printf("******************************************************************* ***\n\n");

个人通讯录管理系统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 通讯录文件不存在"); /*判断结论*/

个人通讯录管理系统课程设计报告示例

个人股权转让协议书 转让方: 受让方: ____________________________________ 公司(以下简称合营公司),于______年____月_____日成立,由甲方与________________合资经营,注册资金为_____币_________万元,投资总额_______币_________万元,实际已投资_____币________万元。甲方愿将其占合营公司____ %的股权转让给乙方;经公司董事会通过,并征得他方股东的同意,现甲乙双方协商,就转让股权一事,达成协议如下: 一、股权转让的价格、期限及方式 1、甲方占有公司____%的股权,根据原合营公司合同书规定,甲方应投资____币______万元。现甲方将其占公司____%的股权以____币______万元转让给乙方。 2、乙方应于本协议生效之日起____天内按第一条第一款规定的货币和金额以银行转帐方式分____次付清给甲方。 二、甲方保证对其拟转让给乙方的股权拥有完全、有效的处分权,保证该股权没有质押,并免遭第三人追索,否则应由甲方承担由此引起的一切经济和法律责任。 三、有关公司盈亏(含债权债务)的分担(任选一款)。 1、本协议生效后,乙方按股份比例分享利润和分担风险及亏损(含转让前该股份应享有和分担公司的债权债务)。

2、股权转让前,聘请在中国注册的会计师(或其他方式)对公司进行审计,乙方按双方认可的审计报告表的范围承担甲方应分担的风险、亏损和享有权益。股权转让生效后,若发现属转让前,审计报告表以外的合营公司的债务,由乙方按股权比例代为承担,但应由甲方负责偿还。股权转让生效后,乙方取得股东地位,并按股份比例享有其股东权利和承担义务。 3、股权转让前,聘请在中国注册的会计师(或公司董事会组织)对公司进行审计,甲方按审计报告表的范围承担应分担的风险、亏损和享有权益,甲方应分担的债权债务,应在其股权款中扣除。本协议生效后,尚未清结的以及审计报告以外属甲方应分担的债权债务,均由乙方按股权比例享有和承担(或由乙方先行承担,然后由乙方向甲方追偿)。 四、违约责任 如乙方不能按期支付股权价款,每逾期一天,应支付逾期部分总价款千分之______的逾期违约金。如因违约给甲方造成经济损失,违约金不能补偿的部分,还应支付赔偿金。 五、纠纷的解决(任选一款) 凡因履行本协议所发生的争议,甲乙双方应友好协商解决如协商不成: 1、向_______人民法院起诉; 2、提请仲裁委员会仲裁; 六、有关费用负担

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

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

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

通讯录管理系统

测试与光电工程学院 课程设计任务书 测控技术与仪器系 100814 班学号 100814415 姓名邓志扬 课题名称:通讯录管理系统的设计 课题要求: 使用C语言设计一个班级通讯录,通迅录数据信息构成内容可自行设计(如:姓名、邮政编码、电话号码等等),通信录数据类型定义为结构体类型或用数组实现。要求实现存取、显示、删除记录、查询记录等功能。 (1)查看功能,选择此功能是列出下列三类选择 A、办公类 B、个人类 C、商务类当选中某类时,显示出此类中所有数据中的姓名和电话号码 (2)增加功能能录入新数据(一个节点包括姓名,电话号码,分类(可选项有:A、办公类,B、个人类,C、商务类)、电子邮件) 例如:杨春商务类 当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入,当通讯录中超过15条信息时,存储空间已满,不能自录入新数据了。 (3)拨号功能能显示出通讯录中所有人的姓名,当选中某个人的姓名时,屏幕中模拟打字机的效果依次显示出此人的电话号码中的各个数字,并伴随相应的拨号声音 (4)修改功能选中某个人的姓名时,可对此人的数据进行相应修改 (5)删除功能选中某个人的姓名时可对此人的相应数据进行删除并自动调整后续条目的编号 课题进程: 1)回顾C语言设计及数据结构设计的相关知识。2周 2)设计基本架构。4周 3)调试、完善、撰写报告。3周 主要参考资料: [1] 谭浩强主编. C语言程序设计(第二版).清华大学出版社, 2005. [2] 谭浩强.C程序设计题解与上机指导(第三版)[M]北京:清华大学出版社,2005年7月 指导教师:付跃文

目录 一、设计目的 (4) 二、设计要求与功能描述 (4) 1.设计要求 (4) 2.功能描述 (5) 三、系统分析与设计 (6) 1、功能模块的设计分析 (6) 2、数据结构设计分析 (9) 3、函数功能描述 (9) 四、系统调试与运行 (11) 五、总结 (18) 六、源程序清单: (19)

相关主题