通讯录获取系统源码下载(通讯录管理系统源码)
本文目录一览:
- 1、c++通讯录源码
- 2、有哪位大神有iphone通讯录源码?用UI做的
- 3、学生通讯录管理系统谁能提供一下c++源代码?
- 4、求大神一份个人通讯录管理系统的运行程序,源代码
- 5、用C语言编写一个通讯录管理系统
- 6、急求通讯录管理系统(有链表的)数据结构c语言版的源代码。要求c++可以测试通过
c++通讯录源码
//通讯录系统,每条记录由姓名、qq、电话号码组成
//用结构体数组实现,可以自动扩充存储区
//多给点财富吧
#includestdio.h
#includestdlib.h
#includestring.h
#define N 60
#define BufLen 1024
typedef struct tagRecord
{
char name[N];
char qq[N];
char tel[N];
}Record,*PtRecord;
typedef enum tagType
{
ByName=1,
ByQQ,
ByTel,
}Type;
typedef enum tagMenu
{
Quit=0,
Add,
Del,
Find,
Output,
OutputAll,
}Menu;
void processmenu(Menu m);
void init();
void begin();
void myrealloc(int reserved);
int add();
void del(int n);
int find(char *v,Type t);
void output(int n);
void outputall();
const int MinCapacity=16;
int count,capacity;
char temp[BufLen]={'\0'},temp2[BufLen]={'\0'},quit[]="quit";
PtRecord ptr;
int main()
{
begin();
system("PAUSE");
return EXIT_SUCCESS;
}
//处理菜单
void processmenu(Menu m)
{
//无法处理wfchl
int t,wfchl=0;
switch(m)
{
case Quit:
if(ptr)
{
free(ptr);
}
exit(0);
break;
case Add:
add();
break;
case Del:
printf("请输入要删除的是第几个记录:");
scanf("%d",t);
del(t-1);
break;
case Find:
printf("子菜单:\n1、按姓名查找\n2、按qq号码查找\n3、按电话号码查找\n请选择一个:");
scanf("%d",t);
switch(t)
{
case ByName:
strcpy(temp2,"不存在姓名为");
printf("请输入要查找的记录的姓名:");
break;
case ByQQ:
strcpy(temp2,"不存在qq号码为");
printf("请输入要查找的记录的qq号码:");
break;
case ByTel:
strcpy(temp2,"不存在电话号码为");
printf("请输入要查找的记录的电话号码:");
break;
default:
printf("无法处理的子菜单命令。\n");
wfchl=1;
break;
}
if(!wfchl)
{
scanf("%s",temp);
t=find(temp,(Type)t);
if(-1==t)
{
strcat(temp2,temp);
strcat(temp2,"的记录。");
printf("%s\n",temp2);
}
else
{
output(t);
}
}
break;
case Output:
printf("请输入要输出第几个记录的信息:");
scanf("%d",t);
output(t-1);
break;
case OutputAll:
outputall();
break;
default:
printf("无法处理的菜单命令。\n");
break;
}
}
void init()
{
count=0;
capacity=MinCapacity;
ptr=(PtRecord)calloc(MinCapacity,sizeof(Record));
printf("初始化通讯录。\n");
while(add());
}
void begin()
{
Menu m;
char menuinfor[BufLen]={'\0'};
sprintf(menuinfor,
"菜单:\n%d、退出\n%d、添加记录\n%d、删除记录\n%d、查找记录\n%d、输出某个记录\n%d、输出所有记录\n请选择一个菜单:",
Quit,Add,Del,Find,Output,OutputAll);
init();
while(1)
{
printf("%s",menuinfor);
scanf("%d",m);
processmenu(m);
}
}
//自动增长通讯录的容量,参数reserved表示是否要保留原有数据
//1表示保留,0表示不保留
void myrealloc(int reserved)
{
int i,c=count+1;
PtRecord tempptr;
if(c=capacity)
{
tempptr=(PtRecord)calloc(2*c,sizeof(Record));
capacity=2*c;
if(reserved)
{
for(i=0;icount;i++)
{
tempptr[i]=ptr[i];
}
}
free(ptr);
ptr=tempptr;
}
}
//添加一个记录
//返回值表示本次添加操作是正常结束,还是异常结束
//返回1表示正常结束,返回0表示应用户要求终止输入
int add()
{
int r=1;
printf("添加记录。\n请输入姓名,qq,电话号码信息(以空格分隔),%s终止输入:",quit);
scanf("%s",temp);
if(strcmp(temp,quit))
{
myrealloc(1);
strcpy(ptr[count].name,temp);
scanf("%s %s",ptr[count].qq,ptr[count].tel);
printf("记录添加成功。\n");
count++;
}
else
{
r=0;
}
return r;
}
//删除下标为n的记录
void del(int n)
{
int i;
Record r;
//printf("del\n");
if(n=0 ncount)
{
r=ptr[n];
for(i=n;icount-1;i++)
{
ptr[i]=ptr[i+1];
}
printf("删除成功。\n记录[%d]:\n%s,%s,%s已删除。\n",n,r.name,r.qq,r.tel);
count--;
}
else
{
printf("删除失败。\n第%d个记录不存在。\n",n+1);
}
}
//查找类型为t,值为v的记录
//返回值为此记录在通讯录数组中的下标
//返回-1表示找不到符合要求的记录
int find(char *v,Type t)
{
int i,n=-1;
for(i=0;icount;i++)
{
switch(t)
{
case ByName:
if(!strcmp(ptr[i].name,v))
{
n=i;
}
break;
case ByQQ:
if(!strcmp(ptr[i].qq,v))
{
n=i;
}
break;
case ByTel:
if(!strcmp(ptr[i].tel,v))
{
n=i;
}
break;
default:
break;
}
if(-1!=n)
{
break;
}
}
return n;
}
//输出下标为n的记录的信息
void output(int n)
{
if(n=0 ncount)
{
printf("记录[%d]:\n%s,%s,%s。\n",n,ptr[n].name,ptr[n].qq,ptr[n].tel);
}
else
{
printf("第%d个记录不存在。\n",n+1);
}
}
//输出所有记录的信息
void outputall()
{
int i;
if(0==count)
{
printf("一个记录也没有了。\n");
}
for(i=0;icount;i++)
{
output(i);
}
}
有哪位大神有iphone通讯录源码?用UI做的
建议可以通过第三方软件微信来完成通讯录获取系统源码下载,具体方法如下通讯录获取系统源码下载:
1、在原来通讯录获取系统源码下载的手机上下载微信,安装并登录。
2、点击微信里通讯录获取系统源码下载的设置,选择通用,点击功能,再点击通讯录安全助手,选择启用,之后点击备份即可上传手机通讯录获取系统源码下载的通讯录。
3、在ipad上同样下载一个微信,登陆后照以上方法找到通讯录安全助手,进入后点击恢复即可下载并导入通讯录。
学生通讯录管理系统谁能提供一下c++源代码?
#include iostream
#include iomanip
#include fstream
#include string
using namespace std;
void input();
void search();
void modify();
void tongji();
void menu();
extern class student
{ public:
char name[20];
int num;
int age;
char sex;
char addr[50];
int tel;
int roomnum;
};
extern student s1;
extern student n;
//int n; //学生人数通讯录获取系统源码下载,全局变量
****************************************
//学生信息的输入
#include "1.h"
//***********************************************************************
void input()
{
fstream file;
file.open("d://student.txt",ios::out);//以输出方式打开文件通讯录获取系统源码下载,如果已经有此名字的文件,则其原有内容全部删除。
cout" please input student's message!"endl;
char ch='y';
while(ch=='y'||ch=='Y')
{
student n;
coutsetw(6)"姓名"setw(6)"学号"setw(6)"年龄" setw(6)"性别"setw(6)"地址" setw(10)"联系电话"setw(9)"寝室号"endl;
cinn.namen.numn.agen.sexn.addrn.teln.roomnum;
filesetw(6)n.namesetw(6)n.numsetw(6)n.agesetw(6)n.sexsetw(10)n.addrsetw(10)n.telsetw(9)n.roomnumendl;
cout"继续输入?Y/N";
cinch;
}
menu();
file.close();
}
//*************************************************************************
//学生信息的修改
void modify()
{
fstream file;
//student s1;
file.open("d:://student.txt",ios::in|ios::out);//以输入输出方式打开文件,文件可读可写。
cout"please enter password(1):";
int p;
cinp;
if(p!=1)
{
cout"error!try again!"endl;
return;
}
file.close();
//else
menu();
}
//***********************************************************************
//学生信息查询
void search()
{
char *inputname=new char[20];
fstream file;
file.open("d:\\student.txt",ios::in|ios::out);//以输方式打开文件
student n;
cout"1.按姓名查询 "" 2.按学号查询"endl;
int a;
cina;
if(a==1)
{
cout"请输入您要查询的学生的姓名:";
cininputname;
if(strcmp(n.name,inputname)==0)
{
cout"学生"inputname"的信息如下:"endl;
coutsetw(6)n.namesetw(6)n.numsetw(6)n.agesetw(6)n.sexsetw(10)n.addrsetw(10)n.telsetw(9)n.roomnumendl;
}
else cout"您的输入有误,请重新输入!";return;
}
else if(a==2)
{
cout"请输入您要查询的学生的学号:";
int inputnum;
cininputnum;
filen.namen.num;
if(n.num==inputnum)
{
cout"学生"inputnum"的信息如下:"endl;
coutsetw(6)n.namesetw(6)n.numsetw(6)n.agesetw(6)n.sexsetw(6)n.addrsetw(10)n.telsetw(9)n.roomnumendl;
}
else cout"您的输入有误,请重新输入!"endl;
}
file.close();
menu();
}
//********************************************************************
//学生信息统计
void tongji()
{
fstream file;
cout"学生信息按学号统计如下通讯录获取系统源码下载:"endl;
coutsetw(6)"姓名"setw(6)"学号"setw(6)"年龄" setw(6)"性别"setw(6)"地址" setw(10)"联系电话"setw(9)"寝室号"endl;
file.open("d:://student.txt",ios::in|ios::out); //以输入输出方式打开文件,文件可读可写。
coutsetw(6)n.namesetw(6)n.numsetw(6)n.agesetw(6)n.sexsetw(6)n.addrsetw(10)n.telsetw(9)n.roomnumendl;
menu();
}
************************************************************
#include "11.h"
void menu()
{
cout" ************************************* "endl;
cout"*********欢迎使用学生通讯录管理系统*********"endl;
cout" ************************************* "endl;
while(1)
{
cout"请选择服务种类:"endl;
cout"1 数据录入 ""2 数据查询 ""3 数据修改 ""4 数据统计 ""5 退出系统"endl;
int ch;
cinch;
switch(ch)
{
case 1:input();break;
case 2:search();break;
case 3:modify();break;
case 4:tongji();break;
case 5:cout"谢谢您的使用!"endl;return;break;
default:cout"您的选择有误!";break;
}
}
}
int main ()
{
menu();
return 0;
}
求大神一份个人通讯录管理系统的运行程序,源代码
楼主 你好 你可以把详细的要求发出来比如实现哪些功能 有了详细要求 我就能写一个你原创的给你look my name and jia me
用C语言编写一个通讯录管理系统
C语言编写一个通讯录管理系统的源代码如下:
#includestdio.h
#includestring.h
#includestdlib.h
/*定义保存通迅录的信息*/
structfriends
{
charname[20];/*名字*/
charprovince[20];/*省份*/
charcity[20];/*所在城市*/
charnation[20];/*民族*/
charsex[2];/*性别M/F*/
intage;/*年龄*/
}
扩展资料
1、在C++中应该使用inline内连函数替代宏调用通讯录获取系统源码下载,这样既可达到宏调用的目的通讯录获取系统源码下载,又避免了宏调用的弊端。
2、在C语言两个函数的名称不能相同通讯录获取系统源码下载,否则会导致编译错误。在C++中,函数名相同而参数不同的两个函数被解释为重载。
3、在大型程序中,使函数名易于管理和使用,不必绞尽脑汁地去处理函数名。
急求通讯录管理系统(有链表的)数据结构c语言版的源代码。要求c++可以测试通过
这个绝对满足了你的要求了,谢谢采纳`
#includeiostream.h
#includestring
#includestdlib.h
class List;
class person
{
public:
friend class List;
private:
person() {next=0;}
person *next;
char name[10],tel[15];
};
class List
{
public:
List(){list=0;}
int gncd(); // 功能菜单
int print(); // 输出所有信息
int append(); // 增加一个信息
int revise(); // 根据姓名、电话修改信息
int dele(); // 根据姓名、电话删除信息
int exit(); // 退出
private:
person *end();
person *list;
};
int List::exit()
{
abort();
return 1;
}
int List::gncd()
{
cout"************欢迎使用****************************"endl;
cout"1.输入信息。"endl;
cout"2.根据姓名、电话修改信息。"endl;
cout"3.根据姓名、电话删除信息"endl;
cout"4.输出所有现有成员信息"endl;
cout"5.退出"endl;
cout"选择:";
int a;
cina;
switch(a)
{
case(1):this-append();break;
case(2):this-revise();break;
case(3):this-dele();break;
case(4):this-print();break;
case(5):this-exit();break;
}
this-gncd();
return 1;
}
int List::print()
{
if(list==0)
{
cout"为空或没输入内容"endl;
return 0;
}
person *p=list;
while(p!=NULL)
{
cout"姓名:"p-nameendl;
cout"电话:"p-telendl;
p=p-next;
}
coutendl;
return 1;
}
int List::append()
{
person *p=new person;
cout"请输入姓名:"endl;
cinp-name;
cout"请输入电话号码:"endl;
cinp-tel;
char temp;
cout"是否继续输入(y/n)";
cintemp;
if(temp=='y'||temp=='Y')
this-append();
if(list==0)
list=p;
else
(end())-next=p;
return 1;
}
person *List::end()
{
person *p,*q;
for(q=p=list;p;q=p,p=p-next) ;
return q;
}
int List::revise()
{
person *p=list;
char temp[20];
cout"你选择了根据姓名、电话修改信息。"endl"请输入将要修改的姓名或电话:";
cintemp;
int i=0;
while(p!=NULL)
{
if(!strcmp(p-name,temp)||!strcmp(p-tel,temp))
{
i=1;
cout"请输入新的姓名:";
cinp-name;
cout"请输入新的电话号码:";
cinp-tel;
}
p=p-next;
}
if(i==1) cout"修改成功!"endl;
if(i!=1) cout"未能找到。"endl;
return 1;
}
int List::dele()
{
person *q,*p=list;
char temp[20];
cout"你选择了根据姓名、电话删除信息。"endl"请输入将要删除的姓名或电话:";
cintemp;
if(p==NULL)
cout"为空或没有输入信息。"endl;
if(!strcmp(p-name,temp)||!strcmp(p-tel,temp)) //要删除的结点是第一个时
{
list=p-next;
delete p;
cout"删除成功!"endl;
}
else
{
while(p!=NULL(strcmp(p-name,temp)||strcmp(p-tel,temp)))
{
q=p;
p=p-next;
}
if(p==NULL) return 0;
else if(q==NULL)
cout"没能找到。"endl;
else
{
q-next=p-next;
delete p;
cout"删除成功!"endl;
}
}
return 1;
}
void main()
{
List L;
L.gncd();
}