日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

c语言通讯录打电话,C语言实现简易通讯录 | 术与道的分享

發(fā)布時(shí)間:2023/11/27 生活经验 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言通讯录打电话,C语言实现简易通讯录 | 术与道的分享 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

#include

#include

#include

#include

#include

#pragma warning (disable:4996)

enum Contact //枚舉變量

{

Quit, //默認(rèn)為0,下面依次遞增+1

Add, //1

Delect, //2

Select, //3

Alter, //4

Show, //5

Empty, //6

Sort //7

};

//打印菜單

void menu()

{

printf("#########################################################\n");

printf("############## C語言實(shí)現(xiàn)簡易通訊錄 #############\n");

printf("############## 1.添加聯(lián)系人 #############\n");

printf("############## 2.刪除聯(lián)系人 #############\n");

printf("############## 3.查找聯(lián)系人 #############\n");

printf("############## 4.修改聯(lián)系人 #############\n");

printf("############## 5.顯示所有聯(lián)系人 #############\n");

printf("############## 6.清空聯(lián)系人 #############\n");

printf("############## 7.按聯(lián)系人名字排序 #############\n");

printf("############## 0.退出 #############");

}

//定義一個(gè)結(jié)構(gòu)體

typedef struct Peo

{

char name[10];

char sex[5];

char Old[10];

char Phone_num[20];

char adrress[30];

}people;

people Peo[1000]; //定義一個(gè)可以存儲(chǔ)1000用戶的結(jié)構(gòu)圖數(shù)組

//添加聯(lián)系人

int Add_Peo(people Peo[], int n)

{

int i = 0;

char select = 0;

char Rem[20];

while (select != 'N') //判斷是否繼續(xù)添加聯(lián)系人

{

printf("姓名:");

scanf("%s", &Peo[n + i].name);

printf("性別:");

scanf("%s", &Peo[n + i].sex);

printf("年齡:");

scanf("%s", &Peo[n + i].Old);

printf("電話:");

scanf("%s", &Peo[n + i].Phone_num);

printf("地址:");

scanf("%s", &Peo[n + i].adrress);

gets(Rem); //讀取字符串

printf("\n是否繼續(xù)添加?(Y/N):");

scanf("%c", &select);

i++;

}

return (n + i);

}

//刪除聯(lián)系人

int Del_Peo(people Peo[], int n)

{

int i = 0;

int j = 0;

char Name[15];

printf("請(qǐng)輸入你要?jiǎng)h除聯(lián)系人的姓名:");

scanf("%s", Name);

while ((strcmp(Peo[i].name, Name) != 0) && (i < n))

{ //判斷輸入的與結(jié)構(gòu)體數(shù)組中存在的是否匹配,此處為不匹配,且未到達(dá)聯(lián)系人上限

i++;

}

if (i == n) //結(jié)構(gòu)體的出口,說明到達(dá)聯(lián)系人上限

{

printf("沒有此聯(lián)系人!\n\n");

return n;

}

for (j = i; j < n - 1; j++) //找到匹配的聯(lián)系人,刪除后,將刪除處之后的數(shù)據(jù)前移一位

{

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

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

strcpy(Peo[j].Old, Peo[j + 1].Old);

strcpy(Peo[j].Phone_num, Peo[j + 1].Phone_num);

strcpy(Peo[j].adrress, Peo[j + 1].adrress);

}

printf("刪除成功!\n");

return (n - 1);

}

//查找聯(lián)系人

void Sel_Peo(people Peo[], int n)

{

char Name[15];

int i = 0;

printf("請(qǐng)輸入要查看聯(lián)系人的姓名:");

scanf("%s", Name);

while ((strcmp(Peo[i].name, Name) != 0) && (i < n))

{

i++;

}

if (i == n)

{

printf("查找的聯(lián)系人不存在!\n\n");

}

else

{

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

printf("性別:%s\n", Peo[i].sex);

printf("年齡:%s\n", Peo[i].Old);

printf("電話:%s\n", Peo[i].Phone_num);

printf("地址:%s\n", Peo[i].adrress);

}

printf("\n");

}

//修改聯(lián)系人信息

void Alter_Peo(people Peo[], int n)

{

int i = 0;

char Name[15];

printf("請(qǐng)輸入你要修改的聯(lián)系人姓名:");

scanf("%s", Name);

while ((strcmp(Peo[i].name, Name) != 0) && (i < n))

{

i++;

}

if (i == n)

{

printf("未查到此聯(lián)系人!\n\n");

}

else

{

printf("姓名:");

scanf("%s", &Peo[i].name);

printf("性別:");

scanf("%s", &Peo[i].sex);

printf("年齡:");

scanf("%s", &Peo[i].Old);

printf("電話:");

scanf("%s", &Peo[i].Phone_num);

printf("地址:");

scanf("%s", &Peo[i].adrress);

}

}

//顯示所有聯(lián)系人信息

void Show_Peo(people Peo[], int n)

{

int i = 0;

printf(" 姓名 性別 年齡 電話 地址\n");

for (i = 0; i < n; i++)

{

printf("%7s%6s%8s%14s%15s\n", Peo[i].name, Peo[i].sex, Peo[i].Old, Peo[i].Phone_num, Peo[i].adrress);

}

printf("\n");

}

//清空聯(lián)系人信息

void Empty_Peo(people Peo[], int n)

{

int i = 0;

for (i = 0; i < n; i++)

{

*Peo[i].name = '\0';

*Peo[i].sex = '\0';

*Peo[i].Old = '\0';

*Peo[i].Phone_num = '\0';

*Peo[i].adrress = '\0';

}

printf("\n");

}

//按聯(lián)系人名字排序

void Sort_Peo(people Peo[], int n)

{

int i = 0;

int j = 0;

struct Peo tmp;

for (i = 0; i < n - 1; i++)

{

for (j = i; j < n; j++)

{

if ((strcmp(Peo[i].name, Peo[j].name)) > 0)

{

tmp = Peo[i];

Peo[i] = Peo[j];

Peo[j] = tmp;

}

}

}

}

int main()

{

int input = 1;

int ret = 0;

while (input)

{

menu();

printf("\n請(qǐng)選擇-->");

scanf("%d", &input);

switch (input)

{

case Add:

ret = Add_Peo(Peo, ret);

break;

case Delect:

ret = Del_Peo(Peo, ret);

break;

case Select:

Sel_Peo(Peo, ret);

break;

case Alter:

Alter_Peo(Peo, ret);

break;

case Show:

Show_Peo(Peo, ret);

break;

case Empty:

Empty_Peo(Peo, ret);

break;

case Sort:

Sort_Peo(Peo, ret);

break;

case Quit:

exit(0);

break;

default:

break;

}

}

system("pause");

return 0;

}

總結(jié)

以上是生活随笔為你收集整理的c语言通讯录打电话,C语言实现简易通讯录 | 术与道的分享的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。