您的位置:

c语言通讯代码,c语言通讯代码有哪些

本文目录一览:

求C语言程序设计手机通讯录代码,急,

//这个是我教材上的,不知道你要的是不这个

#includestdio.h

#includestring.h

struct friends_list

{

char name[10];

int age;

char telephone[13];

};

int Count=0;

void new_friend(struct friends_list friends[]);

void search_friend(struct friends_list friends[],char *name);

int main(void)

{

int choice;

char name[10];

struct friends_list friends[50];

do

{

printf("通讯录功能选项:1:新建2:查询0:退出\n");

printf("请选择功能:\n");

scanf("%d",choice);

switch(choice)

{

case 1:new_friend(friends);

break;

case 2:printf("请输入要查找的联系人姓名:");

scanf("%s",name);

search_friend(friends,name);

break;

case 0:break;

}

}

while(choice!=0);

printf("谢谢使用通讯录功能!\n");

return 0;

}

void new_friend(struct friends_list friends[])

{

struct friends_list f;

if(Count==50)

{

printf("通讯录已满!\n");

return;

}

printf("请输入新联系人的姓名:");

scanf("%s",f.name);

printf("请输入新联系人的年龄:");

scanf("%d",f.age);

printf("请输入新联系人的联系电话:");

scanf("%s",f.telephone);

friends[Count]=f;

Count++;

}

void search_friend(struct friends_list friends[],char *name)

{

int i,flag=0;

if(Count==0)

{

printf("通讯录是空的!\n");

return;

}

for(i=0;iCount;i++)

if(strcmp(name,friends[i].name)==0)

{

flag=1;

break;

}

if(flag)

{

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

printf("年龄:%d\t",friends[i].age);

printf("电话:%s\n",friends[i].telephone);

}

else

printf("无此联系人!");

}

C语言的通讯录代码是什么?

#include stdio.h

#include stdlib.h

#include string.h

#include conio.h

#define N 100 void input();//添加新用户函数

void amend();//修改用户信息函数

void delete_client();//删除用户信息函数

void demand_client();//用户信息查询函数

void collect_telephone();//用户信息汇总函数

void save_client(struct telephone message);//保存函数

void demand_name();//按用户名查询

void demand_telephone();//按电话号码查询

struct telephone

{

char client_name[20];

char client_address[30];

char client_telephone[15];

}; //添加新用户函数

void input()

{

struct telephone message;

char reply='y';

char save='y';

while (reply=='y')

{ printf("用户姓名:");

scanf("%s",message.client_name);

printf("电话号码:");

scanf("%s",message.client_telephone); save_client(message);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //保存函数

void save_client(struct telephone message)

{

FILE *fp;

fp=fopen("message.dat","a+");

if (fp!=NULL)

{

fwrite(message,sizeof(struct telephone),1,fp);

}

else

{

printf("\n打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

} //修改用户信息函数

void amend()

{

struct telephone message;

FILE *fp;

char amend_name[20];

char reply='y';

char found='y';

char save='y';

int size=sizeof(struct telephone);

while (reply=='y')

{

found='n';

fp=fopen("message.dat","r+w");

if (fp!=NULL)

{

system("cls");

printf("\n请输入要修改的姓名:");

scanf("%s",amend_name);

while ((fread(message,size,1,fp))==1)

{

if ((strcmp(amend_name,message.client_name))==0)

{

found='y';

break;

}

}

if (found=='y')

{ printf("==========================================\n");

printf("\n用户姓名:%s\n",message.client_name);

printf("\n电话号码:%s\n",message.client_telephone);

printf("==========================================\n");

printf("修改用户信息:\n");

printf("\n用户姓名:");

scanf("%s",message.client_name); printf("\n电话号码:");

scanf("%s",message.client_telephone);

printf("\n要保存吗?(y/n):");

scanf(" %c",save);

if (save=='y')

{

fseek(fp,-size,1);

fwrite(message,sizeof(struct telephone),1,fp);

}

}

else

{

printf("无此人信息!\n");

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //删除用户信息函数

void delete_client()

{

struct telephone message[N];

struct telephone temp_str;

struct telephone delete_str;

int i=0,j=0;

char reply='y';

char found='y';

char confirm='y';

char delete_name[20];

FILE *fp;

while (reply=='y')

{

system("cls");

fp=fopen("message.dat","r");

if (fp!=NULL)

{

i=0;

found='n';

printf("\n请输入姓名:");

scanf("%s",delete_name);

while ((fread(temp_str,sizeof(struct telephone),1,fp))==1)

{

if ((strcmp(delete_name,temp_str.client_name))==0)

{

found='y';

delete_str=temp_str;

}//查找要删除的记录

else

{

message[i]=temp_str;

i++;

}//将其它无关记录保存起来

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

if (found=='y')

{

printf("==========================================\n");

printf("用户姓名:%s\n",delete_str.client_name);

printf("电话号码:%s\n",delete_str.client_telephone);

printf("==========================================\n");

}

else

{

printf("无此人信息,按任意键返回……\n");

getchar();

break;

}

printf("确定要删除吗?(y/n):");

scanf(" %c",confirm);

if (confirm=='y')

{

fp=fopen("message.dat","w");

if (fp!=NULL)

{

for(j=0;ji;j++)

{

fwrite(message[j],sizeof(struct telephone),1,fp);

}

printf("记录已删除!!!\n");

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

}

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

}

//用户信息查询函数

void demand_client()

{

int choice=1;

while (choice!=3)

{

system("cls");

printf("电话查询菜单\n");

printf(" 1 按联系人姓名查询\n");

printf(" 2 按联系人电话号码查询\n");

printf(" 3 返回主菜单\n");

printf("请选择(1-3):");

scanf("%d%*c",choice);

if (choice3)

{

printf("请输入1-6之间的整数\n");

printf("按任意键返回菜单……\n");

getchar();

continue;

}

if (choice==1)

{

demand_name();

}

else if (choice==2)

{

demand_telephone();

}

}

} //按用户名查询

void demand_name()

{

struct telephone message;

FILE *fp;

char amend_name[20];

char reply='y';

char found='y';

while (reply=='y')

{

found='n';

fp=fopen("message.dat","r+w");

if (fp!=NULL)

{

system("cls");

printf("\n请输入姓名:");

scanf("%s",amend_name);

while ((fread(message,sizeof(struct telephone),1,fp))==1)

{

if ((strcmp(amend_name,message.client_name))==0)

{

found='y';

break;

}

}

if (found=='y')

{ printf("==========================================\n");

printf("用户姓名:%s\n",message.client_name); printf("电话号码:%s\n",message.client_telephone);

printf("==========================================\n");

}

else

{

printf("无此人信息!\n");

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //按电话号码查询

void demand_telephone()

{

struct telephone message;

FILE *fp;

char telephone[20];

char reply='y';

char found='y';

while (reply=='y')

{

found='n';

fp=fopen("message.dat","r+w");

if (fp!=NULL)

{

system("cls");

printf("\n请输入电话号码:");

scanf("%s",telephone);

while ((fread(message,sizeof(struct telephone),1,fp))==1)

{

if ((strcmp(telephone,message.client_telephone))==0)

{

found='y';

break;

}

}

if (found=='y')

{ printf("==========================================\n");

printf("用户姓名:%s\n",message.client_name); printf("电话号码:%s\n",message.client_telephone);

printf("==========================================\n");

}

else

{

printf("无此电话号码的有关信息!\n");

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //用户信息汇总函数

void collect_telephone()

{

struct telephone message;

FILE *fp;

fp=fopen("message.dat","r");

if (fp!=NULL)

{

system("cls");

printf("\n用户姓名\t\t电话号码\n");

while ((fread(message,sizeof(struct telephone),1,fp))==1)

{

printf("\n%-24s",message.client_name); printf("%-12s\n",message.client_telephone);

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("按任意键返回主菜单……\n");

getch();

} void main()

{

char choice[10]="";

int len=0;

while (choice[0]!='7')

{ printf("\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 7、退出\n");

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

printf("请选择(1-7):");

scanf("%s",choice);

len=strlen(choice);

if (len1)

{

printf("请输入1-6之间的整数\n");

printf("按任意键返回主菜单……\n");

getchar();

getchar();

continue;

} switch (choice[0]) {

case '1':

input();

break;

case '2':

amend();

break;

case '3':

delete_client();

break;

case '4':

demand_client();

break;

case '5':

collect_telephone();

break; default:

break;

}

}

}

通讯录的C语言代码

分析:

跟据楼主的意思!我们可以得出,这个程序只要求我们写查询通迅录的内容

而通迅录的内容,可以通过初始化得出!

简而言之:写一个查询函数

呵呵···把问题相通了,我们就开始写算法吧let's go!!!

----------------------------------------------------------------

算法:

1.获得用户的输入 (就是要查询的对象的名字)

2.查询 (在这我用穷举通迅录的方式查询了,^_^^_^)

3.输出查询结果

算法就这样被我们征服了!!!呵呵~~好有成就感哇!!

但我们现在还不能开始编码,我得们先想好怎么编,要做到胸有成竹!!!

那我现在来想一下该怎么编码吧!let's go!!!

----------------------------------------------------------------

要保存通迅的信息,那么我们得用一个结构体吧:

struct friends

{

char name[20]; /* 名字不能写得太长哦 */

char province[20]; /* 省份 */

char city[20]; /* 所在城市 */

char nation[20]; /* 民族 */

char sex[2]; /* 性别 M/F */

int age; /* 年龄 */

};

要获得用户输入,要用个 char search_name[20];

查询结果反回一个数,记录对象在通迅录中的位置:int index;

查询中有用要循环,用一个记数器: int i;

----------------------------------------------------------------

OK,该用的变量我们都想好了!算法我们也想好了。还等什么呢,开始编码吧

呵呵~~是不是等这个时候都等得急了~~~~~

-------------------------------------------------------------------

*******************************************************************

******* 程序实现:

*******************************************************************

#include stdio.h

#include string.h

#include stdlib.h

/* 定义保存通迅录的信息 */

struct friends

{

char name[20]; /* 名字 */

char province[20]; /* 省份 */

char city[20]; /* 所在城市 */

char nation[20]; /* 民族 */

char sex[2]; /* 性别 M/F */

int age; /* 年龄 */

};

void getname (char search_name[]);

int search (struct friends friend_list[], char search_name[]);

void print_result(struct friends friend_list[], int index);

int main (void)

{

int index;

char search_name[20];

struct friends friend_list[4] = {

,

,

,

,

};

(void) getname (search_name); /* 获得用户输入 */

index = search (friend_list, search_name); /* 查询 */

(void) print_result (friend_list,index); /* 打印结果 */

return 0;

}

/****************************************

*** 函数名:getname

*** 功能:获得用户要查询的对象的名字

****************************************/

void getname (char search_name[])

{

printf ("Pleace enter the name of your friends you want to search");

scanf ("%s", search_name);

}

/****************************************

*** 函数名:search

*** 功能:查询对象

****************************************/

int search (struct friends friend_list[], char search_name[])

{

int i;

/* 穷举通迅录 */

for (i = 0; i 4; ++i)

{

if (strcmp(friend_list[i].name, search_name) == 0)

{

return (i);

}

}

if (i == 4)

{

printf ("I am sorry! there is nobody by the name you enter!\n");

fflush(stdin);

getchar();

exit (0);

}

}

/****************************************

*** 函数名:print_result

*** 功能:打印结果

****************************************/

void print_result(struct friends friend_list[], int index)

{

printf ("the imformation of %s:\n", friend_list[index].name);

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

printf (" NAME: %-s\n", friend_list[index].name);

printf ("PROVINCE: %-s\n", friend_list[index].province);

printf (" CITY: %-s\n", friend_list[index].city);

printf (" NATION: %-s\n", friend_list[index].nation);

printf (" SEX: %-s\n", friend_list[index].sex);

printf (" AGE: %-d\n", friend_list[index].age);

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

fflush(stdin);

getchar();

}

*****************************************************************************

*****************************************************************************

呵呵~~一口气把它写出来了!!!前期写算法是很重要的!!

现在还没结束!!我们要先来测试一下!!

--------------------------------------

Pleace enter the name of your friends you want to searchlihan

the imformation of lihan:

------------------------------------------------

NAME: lihan

PROVINCE: liaoning

CITY: huluodao

NATION: han

SEX: M

AGE: 19

-------------------------------------------------

--------------------------------------

Pleace enter the name of your friends you want to searchlbmzwyy

I am sorry! there is nobody by the name you enter!

说明成功了~~~呵呵~~太高兴了~~

--------------------------------------

请记注一点:克制编码的诱惑

无论多么小的问题都要先分析好问题,想好算法,才能开始编码!!!我相信这样做一定对你有好处的!

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

通讯录代码 C语言 跪求

#include stdio.h

#include stdlib.h

#include string.h

#include conio.h

#define N 100 void input();//添加新用户函数

void amend();//修改用户信息函数

void delete_client();//删除用户信息函数

void demand_client();//用户信息查询函数

void collect_telephone();//用户信息汇总函数

void save_client(struct telephone message);//保存函数

void demand_name();//按用户名查询

void demand_telephone();//按电话号码查询

struct telephone

{

char client_name[20];

char client_address[30];

char client_telephone[15];

}; //添加新用户函数

void input()

{

struct telephone message;

char reply='y';

char save='y';

while (reply=='y')

{ printf("用户姓名:");

scanf("%s",message.client_name);

printf("电话号码:");

scanf("%s",message.client_telephone); save_client(message);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //保存函数

void save_client(struct telephone message)

{

FILE *fp;

fp=fopen("message.dat","a+");

if (fp!=NULL)

{

fwrite(message,sizeof(struct telephone),1,fp);

}

else

{

printf("\n打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

} //修改用户信息函数

void amend()

{

struct telephone message;

FILE *fp;

char amend_name[20];

char reply='y';

char found='y';

char save='y';

int size=sizeof(struct telephone);

while (reply=='y')

{

found='n';

fp=fopen("message.dat","r+w");

if (fp!=NULL)

{

system("cls");

printf("\n请输入要修改的姓名:");

scanf("%s",amend_name);

while ((fread(message,size,1,fp))==1)

{

if ((strcmp(amend_name,message.client_name))==0)

{

found='y';

break;

}

}

if (found=='y')

{ printf("==========================================\n");

printf("\n用户姓名:%s\n",message.client_name);

printf("\n电话号码:%s\n",message.client_telephone);

printf("==========================================\n");

printf("修改用户信息:\n");

printf("\n用户姓名:");

scanf("%s",message.client_name); printf("\n电话号码:");

scanf("%s",message.client_telephone);

printf("\n要保存吗?(y/n):");

scanf(" %c",save);

if (save=='y')

{

fseek(fp,-size,1);

fwrite(message,sizeof(struct telephone),1,fp);

}

}

else

{

printf("无此人信息!\n");

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //删除用户信息函数

void delete_client()

{

struct telephone message[N];

struct telephone temp_str;

struct telephone delete_str;

int i=0,j=0;

char reply='y';

char found='y';

char confirm='y';

char delete_name[20];

FILE *fp;

while (reply=='y')

{

system("cls");

fp=fopen("message.dat","r");

if (fp!=NULL)

{

i=0;

found='n';

printf("\n请输入姓名:");

scanf("%s",delete_name);

while ((fread(temp_str,sizeof(struct telephone),1,fp))==1)

{

if ((strcmp(delete_name,temp_str.client_name))==0)

{

found='y';

delete_str=temp_str;

}//查找要删除的记录

else

{

message[i]=temp_str;

i++;

}//将其它无关记录保存起来

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

if (found=='y')

{

printf("==========================================\n");

printf("用户姓名:%s\n",delete_str.client_name);

printf("电话号码:%s\n",delete_str.client_telephone);

printf("==========================================\n");

}

else

{

printf("无此人信息,按任意键返回……\n");

getchar();

break;

}

printf("确定要删除吗?(y/n):");

scanf(" %c",confirm);

if (confirm=='y')

{

fp=fopen("message.dat","w");

if (fp!=NULL)

{

for(j=0;ji;j++)

{

fwrite(message[j],sizeof(struct telephone),1,fp);

}

printf("记录已删除!!!\n");

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

}

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

}

//用户信息查询函数

void demand_client()

{

int choice=1;

while (choice!=3)

{

system("cls");

printf("电话查询菜单\n");

printf(" 1 按联系人姓名查询\n");

printf(" 2 按联系人电话号码查询\n");

printf(" 3 返回主菜单\n");

printf("请选择(1-3):");

scanf("%d%*c",choice);

if (choice3)

{

printf("请输入1-6之间的整数\n");

printf("按任意键返回菜单……\n");

getchar();

continue;

}

if (choice==1)

{

demand_name();

}

else if (choice==2)

{

demand_telephone();

}

}

} //按用户名查询

void demand_name()

{

struct telephone message;

FILE *fp;

char amend_name[20];

char reply='y';

char found='y';

while (reply=='y')

{

found='n';

fp=fopen("message.dat","r+w");

if (fp!=NULL)

{

system("cls");

printf("\n请输入姓名:");

scanf("%s",amend_name);

while ((fread(message,sizeof(struct telephone),1,fp))==1)

{

if ((strcmp(amend_name,message.client_name))==0)

{

found='y';

break;

}

}

if (found=='y')

{ printf("==========================================\n");

printf("用户姓名:%s\n",message.client_name); printf("电话号码:%s\n",message.client_telephone);

printf("==========================================\n");

}

else

{

printf("无此人信息!\n");

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //按电话号码查询

void demand_telephone()

{

struct telephone message;

FILE *fp;

char telephone[20];

char reply='y';

char found='y';

while (reply=='y')

{

found='n';

fp=fopen("message.dat","r+w");

if (fp!=NULL)

{

system("cls");

printf("\n请输入电话号码:");

scanf("%s",telephone);

while ((fread(message,sizeof(struct telephone),1,fp))==1)

{

if ((strcmp(telephone,message.client_telephone))==0)

{

found='y';

break;

}

}

if (found=='y')

{ printf("==========================================\n");

printf("用户姓名:%s\n",message.client_name); printf("电话号码:%s\n",message.client_telephone);

printf("==========================================\n");

}

else

{

printf("无此电话号码的有关信息!\n");

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("要继续吗?(y/n):");

scanf(" %c",reply);

}

printf("按任意键返回主菜单……\n");

getchar();

getchar();

} //用户信息汇总函数

void collect_telephone()

{

struct telephone message;

FILE *fp;

fp=fopen("message.dat","r");

if (fp!=NULL)

{

system("cls");

printf("\n用户姓名\t\t电话号码\n");

while ((fread(message,sizeof(struct telephone),1,fp))==1)

{

printf("\n%-24s",message.client_name); printf("%-12s\n",message.client_telephone);

}

}

else

{

printf("打开文件时出现错误,按任意键返回……\n");

getchar();

return;

}

fclose(fp);

printf("按任意键返回主菜单……\n");

getch();

} void main()

{

char choice[10]="";

int len=0;

while (choice[0]!='7')

{ printf("\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 7、退出\n");

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

printf("请选择(1-7):");

scanf("%s",choice);

len=strlen(choice);

if (len1)

{

printf("请输入1-6之间的整数\n");

printf("按任意键返回主菜单……\n");

getchar();

getchar();

continue;

} switch (choice[0]) {

case '1':

input();

break;

case '2':

amend();

break;

case '3':

delete_client();

break;

case '4':

demand_client();

break;

case '5':

collect_telephone();

break; default:

break;

}

}

}