c语言通讯录打电话,C语言实现简易通讯录 | 术与道的分享
#include
#include
#include
#include
#include
#pragma warning (disable:4996)
enum Contact //枚舉變量
{
Quit, //默認為0,下面依次遞增+1
Add, //1
Delect, //2
Select, //3
Alter, //4
Show, //5
Empty, //6
Sort //7
};
//打印菜單
void menu()
{
printf("#########################################################\n");
printf("############## C語言實現簡易通訊錄 #############\n");
printf("############## 1.添加聯系人 #############\n");
printf("############## 2.刪除聯系人 #############\n");
printf("############## 3.查找聯系人 #############\n");
printf("############## 4.修改聯系人 #############\n");
printf("############## 5.顯示所有聯系人 #############\n");
printf("############## 6.清空聯系人 #############\n");
printf("############## 7.按聯系人名字排序 #############\n");
printf("############## 0.退出 #############");
}
//定義一個結構體
typedef struct Peo
{
char name[10];
char sex[5];
char Old[10];
char Phone_num[20];
char adrress[30];
}people;
people Peo[1000]; //定義一個可以存儲1000用戶的結構圖數組
//添加聯系人
int Add_Peo(people Peo[], int n)
{
int i = 0;
char select = 0;
char Rem[20];
while (select != '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是否繼續添加?(Y/N):");
scanf("%c", &select);
i++;
}
return (n + i);
}
//刪除聯系人
int Del_Peo(people Peo[], int n)
{
int i = 0;
int j = 0;
char Name[15];
printf("請輸入你要刪除聯系人的姓名:");
scanf("%s", Name);
while ((strcmp(Peo[i].name, Name) != 0) && (i < n))
{ //判斷輸入的與結構體數組中存在的是否匹配,此處為不匹配,且未到達聯系人上限
i++;
}
if (i == n) //結構體的出口,說明到達聯系人上限
{
printf("沒有此聯系人!\n\n");
return n;
}
for (j = i; j < n - 1; 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);
}
//查找聯系人
void Sel_Peo(people Peo[], int n)
{
char Name[15];
int i = 0;
printf("請輸入要查看聯系人的姓名:");
scanf("%s", Name);
while ((strcmp(Peo[i].name, Name) != 0) && (i < n))
{
i++;
}
if (i == n)
{
printf("查找的聯系人不存在!\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");
}
//修改聯系人信息
void Alter_Peo(people Peo[], int n)
{
int i = 0;
char Name[15];
printf("請輸入你要修改的聯系人姓名:");
scanf("%s", Name);
while ((strcmp(Peo[i].name, Name) != 0) && (i < n))
{
i++;
}
if (i == n)
{
printf("未查到此聯系人!\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);
}
}
//顯示所有聯系人信息
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");
}
//清空聯系人信息
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");
}
//按聯系人名字排序
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請選擇-->");
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;
}
總結
以上是生活随笔為你收集整理的c语言通讯录打电话,C语言实现简易通讯录 | 术与道的分享的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言链表找姓,急啊!!!求救了 C语言
- 下一篇: 《清夜琴兴》第五句是什么