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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

c++实现通讯录制作

發(fā)布時間:2023/12/14 c/c++ 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c++实现通讯录制作 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

C/C++實(shí)現(xiàn)通訊錄的制作,實(shí)現(xiàn)添加,刪除,查找,顯示,退出等功能。

#include<iostream> #include<string> using namespace std; #define MAX 1000//設(shè)計聯(lián)系人結(jié)構(gòu)體 struct person {//名字string name;//性別 1男 2女int sex;//年齡int age;//電話string phone;//家庭住址string add; };//設(shè)計通訊錄結(jié)構(gòu)體 struct books {//聯(lián)系人數(shù)組person p[MAX];//聯(lián)系人個數(shù)int size; }; //添加聯(lián)系人 void add(books* abs) {//先判斷是否已滿,如果滿了不添加if (abs->size == MAX) {cout << "通訊錄已滿" << endl;return;}else {//添加具體聯(lián)系人string name;cout << "請輸入姓名" << endl;cin >> name;abs->p[abs->size].name = name;//性別cout << "請輸入性別" << endl;cout << "1----男" << endl;cout << "2----女" << endl;int sex;while (true) {cin >> sex;if (sex == 1 || sex == 2) {abs->p[abs->size].sex = sex;break;}else {cout << "輸入有誤,請重新輸入" << endl;}}//年齡cout << "請輸入年齡" << endl;int age;cin >> age;abs->p[abs->size].age = age;//電話cout << "請輸入電話:" << endl;string phone;cin >> phone;abs->p[abs->size].phone = phone;//家庭住址cout << "請輸入家庭地址:" << endl;string add;cin >> add;abs->p[abs->size].add = add;//更新通訊錄人數(shù)abs->size++;cout << "恭喜您添加成功" << endl;system("pause");//請按任意鍵繼續(xù)system("cls");//清屏} }//顯示聯(lián)系人 void show(books* abs) {//判斷通訊錄是否有人//若有人,顯示,若沒有,提示if (abs->size == 0) {cout << "通訊錄為空" << endl;}else {for (int i = 0; i < abs->size; i++) {cout << "姓名:" << abs->p[i].name << "\t";cout << "性別:" <<( abs->p[i].sex==1?"男":"女") << "\t";cout << "年齡:" << abs->p[i].age << "\t";cout << "電話:" << abs->p[i].phone << "\t";cout << "住址:" << abs->p[i].add << endl;}}system("pause");system("cls"); }//檢測聯(lián)系人是否存在,如果存在,則刪除,否則返回-1 int exist(books* abs,string name) {for (int i = 0; i < abs->size; i++) {if (abs->p[i].name == name) {return i;//找到了,返回這個人在數(shù)組中的下標(biāo)}}return -1;//如果遍歷完沒有找到,返回-1 }//刪除指定聯(lián)系人 void del(books* abs) {cout << "請輸入您要刪除的人" << endl;string name;cin >> name;int ret = exist(abs, name);if (ret != -1) {for (int i = ret; i < abs->size; i++) {//數(shù)據(jù)前移abs->p[i] = abs->p[i + 1];}abs->size--;//更新人數(shù)cout << "刪除成功!" << endl;}else {cout << "查無此人" << endl;}system("pause");system("cls"); }//查找指定的聯(lián)系人 void find(books* abs) {cout << "請輸入您要查找的聯(lián)系人" << endl;string name;cin >> name;//判斷指定聯(lián)系人是否存在int ret = exist(abs,name);if (ret != -1) {cout << "姓名:" << abs->p[ret].name << "\t";cout << "性別:" << abs->p[ret].sex << "\t";cout << "年齡:" << abs->p[ret].age << "\t";cout << "電話:" << abs->p[ret].phone << "\t";cout << "地址:" << abs->p[ret].add << "\t";}else {cout << "查無此人" << endl;}system("pause");system("cls"); }//修改聯(lián)系人 void modify(books* abs) {cout << "請輸入要修改的聯(lián)系人信息" << endl;string name;cin >> name;int ret = exist(abs, name);if (ret != -1) {string name;cout << "請輸入姓名" << endl;cin >> name;abs->p[ret].name = name;//性別cout << "請輸入性別" << endl;cout << "1----男" << endl;cout << "2----女" << endl;int sex;while (true) {cin >> sex;if (sex == 1 || sex == 2) {abs->p[ret].sex = sex;break;}else {cout << "輸入有誤,請重新輸入" << endl;}}//年齡cout << "請輸入年齡" << endl;int age;cin >> age;abs->p[ret].age = age;//電話cout << "請輸入電話:" << endl;string phone;cin >> phone;abs->p[ret].phone = phone;//家庭住址cout << "請輸入家庭地址:" << endl;string add;cin >> add;abs->p[ret].add = add;}else {cout << "查無此人" << endl;}system("pause");system("cls"); }//清空聯(lián)系人 void clear(books* abs) {abs->size = 0;//將聯(lián)系人數(shù)目置零,邏輯上清空cout << "通訊錄已經(jīng)清空" << endl;system("pause");system("cls"); }//菜單界面 void showmenu() {cout << "****************************" << endl;cout << "***** 1、添加聯(lián)系人 *****" << endl;cout << "***** 2、顯示聯(lián)系人 *****" << endl;cout << "***** 3、刪除聯(lián)系人 *****" << endl;cout << "***** 4、查找聯(lián)系人 *****" << endl;cout << "***** 5、修改聯(lián)系人 *****" << endl;cout << "***** 6、清空聯(lián)系人 *****" << endl;cout << "***** 0、退出通訊錄 *****" << endl;cout << "****************************" << endl; }int main() {//創(chuàng)建一個通訊錄books abs;abs.size = 0;int select;//創(chuàng)建用戶選擇輸入的變量while (true) {//菜單的調(diào)用showmenu();cin >> select;switch (select) {case 1://1、添加聯(lián)系人add(&abs);//利用地址傳遞break;case 2:// 2、顯示聯(lián)系人show(&abs);break;case 3:// 3、刪除聯(lián)系人del(&abs);break;case 4://4、查找聯(lián)系人find(&abs);break;case 5://5、修改聯(lián)系人modify(&abs);break;case 6://6、清空聯(lián)系人clear(&abs);break;case 0:// 0、退出通訊錄 cout << "歡迎下次使用" << endl;system("pause");return 0;break;default:break;}}system("pause");return 0; }

結(jié)果如圖所示:

總結(jié)

以上是生活随笔為你收集整理的c++实现通讯录制作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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