通讯录设计设计一个“通讯录”程序vb

通讯录设计  时间:2021-10-17  阅读:()

Windows程序设计课程设计:设计一个简单的通讯录应用程序

1. 了解Windows编程的基础知识,掌握MFC应用程序的基本知识; 2. 基本掌握面向对象程序设计的基本思路和方法; 3. 掌握用VC++开发应用程序的的一般步骤和方法; 4. 能够利用所学的基本知识,设计一个简单的通讯录应用程序,具有以下功能:①用文件来保存通讯录信息(必须实现的功能)②编程实现通讯录记录的添加、删除、修改、浏览和查询(必须实现的功能)。

二,设计要求: 3. 用VC++进行编码,实现应用程序的功能。

注重编码质量,代码要有适当的注释;

设计一个同学通讯录管理系统,实现对同学通讯录的管理

系统设计背景: 假设现在要建立一个包含多个班同学信息的同学通讯录,同学通讯录中的每个记录包含:记录编号(num)、班别(group)、姓名(name)、性别(sex)、生日(birthday)、家庭住址(address)、家庭联系电话(home_phone)、移动电话(move_phone)、电子邮箱(email)等数据内容,要求以文件的方式保存录入的同学通讯录数据,供用户查询和使用同学通讯录信息。

系统功能要求: 要求系统包含以下功能, (1)添加记录:操作添加一条新的记录项; (2)删除记录:删除一条已经存在的记录项; (3)修改记录:改变记录项的一个或多个属性,并用新的记录项覆盖已经存在的记录项; (4)查找记录:根据用户输入的属性值查找并输出符合条件的记录项,要求可以“按记录编号”、“按姓名”、“按电话号码”等多种关键字进行记录查询(查询结果可以包含多条满足条件的记录,如多人姓名相同,而又按该姓名查询时); (5)打印输出通讯录:以一定的格式打印出当前同学通讯录的所有内容列表;系统设计要求: (1)要求平时通讯录数据以文件形式存储在磁盘上,根据实际需要定义文件的存储格式(文本文件或二进制文件),在系统运行中需要对文件进行读写操作; (2)系统执行需要对数据进行处理时,将文件中的记录读取到结构体数组中,对结构体数组内的数据进行处理,所有处理完毕后,要结束程序时,将该结构体数组的内容重新写回到文件中保存; (3)程序中要包含有对输入数据的容错性检查,保证通讯录数据的合法性 (4)结构体数组的长度要求使用动态分配方式进行定义(即根据文件中记录的个数来定义结构体数组长度,或根据添加数据记录的需要来修改结构体数组长度);

手机通讯录的制作

用91手机助手的备份功能即可,在主界面选“功能大全”--->"数据安全(备份/还原)"--->选择要备份的资料(联系人、短信、通话记录等)--->指定备份路径--->“开始备份”即可; 在备份路径下会有“BackupSetting.ini、BackupInfo.ini、日期+序号的文件夹”,其中文件夹中会有“AddressBook”文件夹,里面就是vcard文件(扩展名为.vcf);

设计通讯录管理系统 可以添加,删除,修改信息和查询的功能。并保存在文件中,能按表格方式输出。

#include"stdio.h" #include"stdlib.h" #include"string.h" struct student { int no; /*学号*/ char name[20]; /*姓名*/ char acdamic[20]; /*院系*/ char major[20]; /*专业*/ char province[20]; /*籍贯*/ char address[40]; /*家庭地址*/ long phone; /*联系电话*/ struct student *next; }; struct student *input(); void print(struct student *h); struct student *insert(struct student *h); struct student *del(struct student *h); void find4(struct student *h); void find3(struct student *h); void find2(struct student *h); void find1(struct student *h); struct student *head=NULL; char ch,*menu[]={"------------------通讯录菜单------------", "1.----------建立学生通讯录---------------", "2.----------输出全部学生通讯录---------------", "3.----------增加的学生的个数---------------", "4.----------删除指定学号的学生--------------", "5.----------按系别查找学生信息-------------", "6.----------按专业查找学生信息-------------", "7.----------按姓名查找学生信息-------------", "8.----------按学号查找学生信息--------------", "9.----------退出通讯录-----------------------"}; struct student *input() /*输入函数*/ { int n; printf("请输入你要建立的学生通讯录的学生个数: "); scanf("%d",&n); struct student *h=NULL,*p,*q; int i; for(i=1;i<=n;i++) { printf("请依次输入第%d个学生的学号,姓名,系别,专业,籍贯,家庭住址和联系电话: ",i); p=(struct student *)malloc(sizeof(struct student)); if(p==NULL) { printf("内存不足! "); exit(0); } scanf("%d%s%s%s%s%s%ld",&p->no,p->name,p->acdamic,p->major,p->province,p->address,&p->phone); if(i==1)h=p; else q->next=p; q=p; } q->next=NULL; return h; } void print(struct student *h) /*输出函数*/ { struct student *p=h; while(p) { printf("学生信息: %d,%s,%s,%s,%s,%s,%ld ",p->no,p->name,p->acdamic,p->major,p->province,p->address,p->phone); p=p->next; } } struct student *insert(struct student *h) /*增加学生信息*/ { int n; printf("请输入你要增加的学生的个数: "); scanf("%d",&n); struct student *p,*r; int i; for(i=1;i<=n;i++) { r=(struct student *)malloc(sizeof(struct student)); printf("请输入第%d个你要插入的学生的信息: ",i); scanf("%d%s%s%s%s%s%ld",&r->no,r->name,r->acdamic,r->major,r->province,r->address,&r->phone); p=h; h=r; r->next=p; } return h; } struct student *del(struct student *h) /*按学号进行删除*/ { int n; printf("请输入要删除的学生的学号: "); scanf("%d",&n); struct student *p,*q; if(h=NULL)printf("empty list! "); else { p=h; while(p->no!=n&&p->next) {q=p;p=p->next;} if(p->no==n) { if(h==p)h=p->next; else q->next=p->next; } else printf("%d is not found! "); } return h; } void find1(struct student *h) /*按院系查找学生信息*/ { char s[40]; printf("请输入要查找的学生的院系: "); scanf("%s",s); struct student *p; if(h==NULL)printf("empty list! "); else { p=h; while(p) { if(strcmp(p->acdamic,s)==0) printf("学生信息: %d %s %s %s %s %s %ld ",p->no,p->name,p->acdamic,p->major,p->province,p->address,p->phone); p=p->next; } } } void find2(struct student *h) /*按专业查找*/ { char s[20]; printf("请输入要查找的学生的专业名: "); scanf("%s",s); struct student *p; if(h==NULL)printf("empty list! "); else { p=h; while(p) { if(strcmp(p->major,s)==0) printf("学生信息: %d %s %s %s %s %s %ld ",p->no,p->name,p->acdamic,p->major,p->province,p->address,p->phone); p=p->next; } } } void find3(struct student *h) /*按姓名查找*/ { char ss[10]; printf("请输入要查找的学生的姓名: "); scanf("%s",ss); struct student *p; if(h==NULL)printf("empty list! "); else { p=h; while(p) { if(strcmp(p->name,ss)==0) printf("学生信息: %d %s %s %s %s %s %ld ",p->no,p->name,p->acdamic,p->major,p->province,p->address,p->phone); p=p->next; } } } void find4(struct student *h) /*按学号查找*/ { int num; printf("请输入要查找的学生的学号: "); scanf("%d",&num); struct student *p; if(h==NULL)printf("empty list! "); else { p=h; while(p) { if(p->no==num) printf("学生信息: %d %s %s %s %s %s %ld ",p->no,p->name,p->acdamic,p->major,p->province,p->address,p->phone); else printf("没有你要查找的学生信息! "); p=p->next; } } } int menu_select() { int i,s; char c[3]; for(i=0;i<10;i++) printf("%s ",menu[i]); do { scanf("%s",c); s=atoi(c); }while(s<0||s>9); return s; } main() { for(;;) { switch(menu_select()) { case 1:head=input();break; case 2:print(head);break; case 3:head=insert(head);break; case 4:head=del(head);break; case 5:find1(head);break; case 6:find2(head);break; case 7:find3(head);break; case 8:find4(head);break; case 9:exit(0); } } } 一一,错的地方自己改哈。











呵呵.........没人回答,太可怜了。

设计一个“通讯录”程序vb

首先 在窗体上添加控件 组合框控件命名为:ComboName 显示单位控件:Chkdanwei 显示地址控件:Chkdizhi 电话文本框:TxtTel 单位文本框:Txtdanwei 地址文本框:Txtdizhi 添加人员按钮:默认 然后直接复制下面的代码就OK了 Option Explicit Private Type tongxunlu MunName As String tel As String danwei As String dizhi As String End Type Dim a(100) As tongxunlu Dim n As Integer Dim x As Integer Private Sub Chkdanwei_Click() If Chkdanwei.Value = 1 Then Txtdanwei.Text = a(x).danwei Else Txtdanwei.Text = "" End If End Sub Private Sub Chkdizhi_Click() If Chkdizhi.Value = 1 Then Txtdizhi.Text = a(x).dizhi Else Txtdizhi.Text = "" End If End Sub Private Sub ComboName_Click() x = ComboName.ListIndex TxtTel.Text = a(x).tel End Sub Private Sub Command1_Click() a(n).MunName = InputBox("请输入姓名") a(n).tel = InputBox("请输入电话号码") a(n).danwei = InputBox("请输入工作单位") a(n).dizhi = InputBox("请输入家庭地址") If a(n).MunName = "" Or a(n).tel = "" Or a(n).danwei = "" Or a(n).dizhi = "" Then GoTo 99 ComboName.AddItem a(n).MunName ComboName.ListIndex = n n = n + 1 99 End Sub Private Sub Form_Load() n = 0 End Sub

HyperVMart:加拿大vps,2核/3G/25G NVMe/G口不限流量/季付$10.97,免费Windows系统

hypervmart怎么样?hypervmart是一家成立了很多年的英国主机商家,上一次分享他家还是在2年前,商家销售虚拟主机、独立服务器和VPS,VPS采用Hyper-V虚拟架构,这一点从他家的域名上也可以看出来。目前商家针对VPS有一个75折的优惠,而且VPS显示的地区为加拿大,但是商家提供的测速地址为荷兰和英国,他家的优势就是给到G口不限流量,硬盘为NVMe固态硬盘,这个配置用来跑跑数据非常...

ShockHosting日本机房VPS测试点评

这个月11号ShockHosting发了个新上日本东京机房的邮件,并且表示其他机房可以申请转移到日本,刚好赵容手里有个美国的也没数据就发工单申请新开了一个,这里做个简单的测试,方便大家参考。ShockHosting成立于2013年,目前提供的VPS主机可以选择11个数据中心,包括美国洛杉矶、芝加哥、达拉斯、杰克逊维尔、新泽西、澳大利亚、新加坡、日本、荷兰和英国等。官方网站:https://shoc...

Megalayer美国独立服务器配置及性能速度综合评测

Megalayer 商家在之前也有记录过,商家开始只有提供香港站群服务器和独立服务器,后来也有增加到美国独立服务器,以及前几天也有介绍到有增加香港VPS主机。对于香港服务器之前有过评测(Megalayer香港服务器配置一览及E3-1230 8GB服务器评测记录),这里申请到一台美国独立服务器,所以也准备简单的评测记录。目前市场上我们看到很多商家提供VPS或者云服务器基本上没有什么特别的,但是独立服...

通讯录设计为你推荐
国足热身赛直播今晚国足与菲律宾热身赛赛有直播吗陆兆禧简历阿里云os 兼容android的应用多吗怀特计划什么是雷顿森林体系柴国生有关中小企业如何应对人民币升值带来的影响雯雅婷2秘密潜入2秘籍一霸一霸上山二四组打三个数字罗斯柴尔德家族现状罗斯切尔德家族现在情况怎么样?痒是谁写的盗墓笔记老痒解子扬是什么身份啊,和小花有关系吗五月末打架大榛子打杀虫药最佳时间,一般在几月份打合适?一共要打什么药,名字是什么?黄安微博黄安儿子遇车祸现场:黄安个人资料 黄安老婆是谁女儿黄思佳照片
免费域名跳转 西安电信测速 紫田 wdcp 牛人与腾讯客服对话 台湾谷歌网址 韩国网名大全 大容量存储器 帽子云 日本bb瘦 cdn联盟 美国在线代理服务器 百度云1t 美国免费空间 架设邮件服务器 免费的域名 服务器硬件配置 fatcow windowsserver2012 服务器是什么 更多