国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【黑馬程序員】通訊錄管理系統----個人改良版(附帶程序打包)

tanglijun / 2470人閱讀

摘要:添加聯系人顯示聯系人刪除聯系人查找聯系人修改聯系人清空聯系人退出通訊錄您輸入的聯系人信息已達最大值請輸入該聯系人姓名請輸入該聯系人性別男女請輸入正確的性別。

#include
using namespace std;

#define Max 1000

void showMenu()
{
?? ?cout << "*************************" << endl;
?? ?cout << "***** 1、添加聯系人 *****" << endl;
?? ?cout << "***** 2、顯示聯系人 *****" << endl;
?? ?cout << "***** 3、刪除聯系人 *****" << endl;
?? ?cout << "***** 4、查找聯系人 *****" << endl;
?? ?cout << "***** 5、修改聯系人 *****" << endl;
?? ?cout << "***** 6、清空聯系人 *****" << endl;
?? ?cout << "***** 0、退出通訊錄 *****" << endl;
?? ?cout << "*************************" << endl;
}

struct person
{
?? ?string p_name;
?? ?int p_gender = 0;
?? ?int p_age = 0;
?? ?string p_phone;
?? ?string p_addr;
};

struct addressbook
{
?? ?struct person personArray[Max];
?? ?int p_size;
};

void addperson(struct addressbook* ab)
{
?? ?if (ab->p_size == Max)
?? ?{
?? ??? ?cout << "您輸入的聯系人信息已達最大值" << endl;
?? ??? ?return;
?? ?}
?? ?else
?? ?{
?? ??? ?string name;
?? ??? ?cout << "請輸入該聯系人姓名" << endl;
?? ??? ?cin >> name;
?? ??? ?ab->personArray[ab->p_size].p_name = name;

?? ??? ?int gender = 0;
?? ??? ?cout << "請輸入該聯系人性別" << endl;
?? ??? ?cout << "1、男" << endl;
?? ??? ?cout << "2、女" << endl;
?? ??? ?cin >> gender;

?? ??? ?while (true)
?? ??? ?{
?? ??? ??? ?if (gender == 1 || gender == 2)
?? ??? ??? ?{
?? ??? ??? ??? ?ab->personArray[ab->p_size].p_gender = gender;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?cout << "請輸入正確的性別。" << endl;
?? ??? ??? ?cin >> gender;
?? ??? ?}

?? ??? ?int age = 0;
?? ??? ?cout << "請輸入該聯系人年齡" << endl;
?? ??? ?cin >> age;
?? ??? ?ab->personArray[ab->p_size].p_age = age;

?? ??? ?string phone;
?? ??? ?cout << "請輸入該聯系人手機號碼" << endl;
?? ??? ?cin >> phone;
?? ??? ?ab->personArray[ab->p_size].p_phone = phone;

?? ??? ?string addr;
?? ??? ?cout << "請輸入該聯系人地址" << endl;
?? ??? ?cin >> addr;
?? ??? ?ab->personArray[ab->p_size].p_addr = addr;

?? ??? ?ab->p_size++;

?? ??? ?cout << "添加成功!" << endl;

?? ??? ?system("pause");
?? ??? ?system("cls");
?? ?}
}

void showperson(struct addressbook* ab)
{
?? ?if (ab->p_size == 0)
?? ?{
?? ??? ?cout << "當前記錄為空" << endl;
?? ?}
?? ?else
?? ?{
?? ??? ?for (int i = 0; i < ab->p_size; i++)
?? ??? ?{
?? ??? ??? ?cout << "姓名:" << ab->personArray[i].p_name << "/t"
?? ??? ??? ??? ? << "性別:" << (ab->personArray[i].p_gender == 1 ? "男" : "女") << "/t"
?? ??? ??? ??? ? << "年齡:" << ab->personArray[i].p_age << "/t"
?? ??? ??? ??? ? << "電話:" << ab->personArray[i].p_phone << "/t"
?? ??? ??? ??? ? << "地址:" << ab->personArray[i].p_addr
?? ??? ??? ??? ? << endl;
?? ??? ?}
?? ?}
?? ?system("pause");
?? ?system("cls");
}

int exist(addressbook* ab, string name)
{
?? ?for (int i = 0; i < ab->p_size; i++)
?? ?{
?? ??? ?if (ab->personArray[i].p_name == name)
?? ??? ?{
?? ??? ??? ?return i;
?? ??? ?}
?? ?}
?? ?return -1;
}

void deleteperson(addressbook* ab)
{
?? ?cout << "請輸入您要刪除的聯系人" << endl;

?? ?string name;
?? ?cin >> name;

?? ?int ret = exist(ab, name);

?? ?if (ret != -1)
?? ?{
?? ??? ?for (int i = ret; i < ab->p_size; i++)
?? ??? ?{
?? ??? ??? ?ab->personArray[i] = ab->personArray[i + 1];//數據前移
?? ??? ?}
?? ??? ?ab->p_size--;
?? ??? ?cout << "刪除成功" << endl;
?? ?}
?? ?else
?? ?{
?? ??? ?cout << "查無此人" << endl;
?? ?}
?? ?system("pause");
?? ?system("cls");
}

void findperson(addressbook* ab)
{
?? ?string name;
?? ?cout << "請輸入您要查找人的姓名" << endl;
?? ?cin >> name;

?? ?int ret = exist(ab, name);

?? ?if (ret == -1)
?? ?{
?? ??? ?cout << "查無此人" << endl;
?? ?}
?? ?else
?? ?{
?? ??? ?cout << "姓名:" << ab->personArray[ret].p_name << "/t"
?? ??? ??? ? << "性別:" << (ab->personArray[ret].p_gender == 1 ? "男" : "女") << "/t"
?? ??? ??? ? << "年齡:" << ab->personArray[ret].p_age << "/t"
?? ??? ? ? ?? ? << "電話:" << ab->personArray[ret].p_phone << "/t"
?? ??? ? ?? ? << "地址:" << ab->personArray[ret].p_addr
?? ??? ??? ? << endl;
?? ?}

?? ?system("pause");
?? ?system("cls");
}

void modifyperson(addressbook* ab)
{
?? ?cout << "請輸入您要查找人的姓名" << endl;
?? ?string name;
?? ?cin >> name;

?? ?int ret = exist(ab, name);

?? ?if (ret == -1)
?? ?{
?? ??? ?cout << "查無此人" << endl;
?? ??? ?system("pause");
?? ??? ?system("cls");
?? ?}
?? ?else
?? ?{
?? ??? ?cout << "請輸入您要修改的聯系人姓名" << endl;
?? ??? ?string new_name;
?? ??? ?cin >> new_name;
?? ??? ?ab->personArray[ret].p_name = new_name;

?? ??? ?cout << "請輸入您要修改的聯系人性別" << endl;
?? ??? ?cout << "1、男" << endl;
?? ??? ?cout << "2、女" << endl;
?? ??? ?int new_gender;
?? ??? ?cin >> new_gender;
?? ??? ?while (true)
?? ??? ?{
?? ??? ??? ?cin >> new_gender;
?? ??? ??? ?if (new_gender == 1 || new_gender == 2)
?? ??? ??? ?{
?? ??? ??? ??? ?ab->personArray[ret].p_gender = new_gender;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?else?
?? ??? ??? ?{
?? ??? ??? ??? ?cout << "輸入有誤,請重新輸入" << endl;
?? ??? ??? ?}
?? ??? ?}
?? ?
?? ??? ?cout << "請輸入您要修改的聯系人年齡" << endl;
?? ??? ?int new_age;
?? ??? ?cin >> new_age;
?? ??? ?ab->personArray[ret].p_age = new_age;

?? ??? ?cout << "請輸入您要修改的聯系人手機號碼" << endl;
?? ??? ?string new_phone;
?? ??? ?cin >> new_phone;
?? ??? ?ab->personArray[ret].p_phone = new_phone;

?? ??? ?cout << "請輸入您要修改的聯系人地址" << endl;
?? ??? ?string new_addr;
?? ??? ?cin >> new_addr;
?? ??? ?ab->personArray[ret].p_addr = new_addr;

?? ??? ?cout << "修改成功" << endl;

?? ??? ?system("pause");
?? ??? ?system("cls");
?? ?}
}

void cleanpeople(addressbook* ab)
{
?? ?cout << "您是否要進行清空操作?" << endl;
?? ?cout << "如果是(清空操作),請按1;不是,輸入任意其他數字返回" << endl;
?? ?int flag = 0;
?? ?cin >> flag;
?? ?if (flag == 1)
?? ?{
?? ??? ?cout << "如果是(清空操作),請按2;不是,輸入任意其他數字返回" << endl;
?? ??? ?cin >> flag;
?? ??? ?if (flag == 2)
?? ??? ?{
?? ??? ??? ?cout << "如果是(清空操作),請按3;不是,輸入任意其他數字返回" << endl;
?? ??? ??? ?cin >> flag;
?? ??? ??? ?if (flag == 3)
?? ??? ??? ?{
?? ??? ??? ??? ?ab->p_size = 0;
?? ??? ??? ??? ?cout << "清空完成" << endl;
?? ??? ??? ?}
?? ??? ?}
?? ?}
?? ?system("pause");
?? ?system("cls");
}


int main()
{
?? ?addressbook ab;

?? ?ab.p_size = 0;
?? ?
?? ?int select = 0;

?? ?while (true)
?? ?{
?? ??? ?showMenu();

?? ??? ?cin >> select;

?? ??? ?switch (select)
?? ??? ?{
?? ??? ?case 1://添加
?? ??? ??? ?addperson(&ab);
?? ??? ??? ?break;

?? ??? ?case 2://顯示
?? ??? ??? ?showperson(&ab);
?? ??? ??? ?break;

?? ??? ?case 3://刪除
?? ??? ?/*{
?? ??? ??? ?cout << "請輸入刪除聯系人的姓名" << endl;
?? ??? ??? ?string name;
?? ??? ??? ?cin >> name;

?? ??? ??? ?if (exist(&ab, name) == -1)
?? ??? ??? ?{
?? ??? ??? ??? ?cout << "查無此人" << endl;
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ?{
?? ??? ??? ??? ?cout << "找到此人" << endl;
?? ??? ??? ?}
?? ??? ?}*/
?? ??? ??? ?deleteperson(&ab);
?? ??? ??? ?break;

?? ??? ?case 4://查找
?? ??? ??? ?findperson(&ab);
?? ??? ??? ?break;

?? ??? ?case 5://修改
?? ??? ??? ?modifyperson(&ab);
?? ??? ??? ?break;

?? ??? ?case 6://清空
?? ??? ??? ?cleanpeople(&ab);
?? ??? ??? ?break;

?? ??? ?case 0://退出
?? ??? ??? ?cout << "歡迎下次使用" << endl;
?? ??? ??? ?system("pause");
?? ??? ??? ?return 0;
?? ??? ??? ?break;
?? ??? ?default:
?? ??? ??? ?cout << "請輸入合適的數" << endl;
?? ??? ?}
?? ?}
?? ?system("pause");
?? ?return 0;
}

程序打包方法:

1,擴展--管理擴展--找到并下載 installer projects

2,新建項目與原項目在一起

?如圖所示

?3,添加項目輸出

?

?

?創建快捷方式,并拖入user‘s desktop

在屬性中重命名以及添加圖標文件,圖標文件可從其他地方拖進相應文件夾中

?

?

?

在User"s Programs Menu 添加文件夾,在右邊空白處右擊,按照先前方式創建新的快捷方式,選擇Applicaiton Folder,主輸出,確定。

?

?

?

4,最后設置一些安裝包屬性以及環境需求,選擇生成

?

?5,安裝與運行

?

?

?安裝完畢,運行成功。

?

?

?

?

?

?

?

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/121398.html

相關文章

  • CGI、FastCGI、PHP-CGI、PHP-FPM個人理解

    摘要:與的理解與都是一種通訊協議,是與其他程序此程序通常叫做程序,如腳本解析器之間通訊的橋梁是的改良進化版,相比更安全性能更好所以現在都是使用協議進行通訊兼容與其實就是腳本解析器,他是協議的實現就是協議的實現和都是程序與的執行流程 CGI與FastCGI的理解 CGI與FastCGI都是一種通訊協議,是web Sever(Apache/nginx/iis)與其他程序(此程序通常叫做CGI程...

    Bryan 評論0 收藏0
  • 動態文件通訊及C語言中的文件的讀寫操作

    摘要:那么我們首先來改造儲存空間也就是通訊錄結構體靜態版本人信息存放在數組中統計存放的人數動態版本統計存放的人數有效容量我們將原本的結構體數組改為一個結構體指針,以此來維護用以儲存個人信息的空間。 上一期我們編寫了一個C語言版本的簡易通訊錄,但是我們的之前的通訊錄是沒有記憶功能的,也就是說,一旦關...

    h9911 評論0 收藏0
  • 2018前端值得關注的技術

    摘要:年前端有哪些領域,技術值得關注,哪些技術會興起,哪些技術會沒落。自從谷歌提出后,就持續的獲得了業界的關注,熱度可見一斑。就在今年,谷歌也宣布將獲得與安卓原生應用同等的待遇與權限。但是無論都值得關注。 1.前言 2017悄然過去,2018已經來到。人在進步,技術在發展。2018年前端有哪些領域,技術值得關注,哪些技術會興起,哪些技術會沒落。下面就我個人的判斷進行一個預測判斷,希望能對大家...

    xiao7cn 評論0 收藏0
  • 2018前端值得關注的技術

    摘要:年前端有哪些領域,技術值得關注,哪些技術會興起,哪些技術會沒落。自從谷歌提出后,就持續的獲得了業界的關注,熱度可見一斑。就在今年,谷歌也宣布將獲得與安卓原生應用同等的待遇與權限。但是無論都值得關注。 1.前言 2017悄然過去,2018已經來到。人在進步,技術在發展。2018年前端有哪些領域,技術值得關注,哪些技術會興起,哪些技術會沒落。下面就我個人的判斷進行一個預測判斷,希望能對大家...

    用戶84 評論0 收藏0
  • Python數據科學環境:Anaconda 了解一下

    摘要:我自己印象最深的是在上安裝加密和科學計算模塊,折騰了很久。這個精裝是面向數據科學的,同時也保留了你自己進一步改裝的空間。數據科學庫包環境管理工具,這幾樣就是的主要功能。 幾乎所有的 Python 學習者都遇到過 安裝 方面的問題。這些安裝問題包括 Python 自身環境的安裝、第三方模塊的安裝、不同版本的切換,以及不同平臺、版本間的兼容問題 等。當你因為這些問題而卡殼,一行代碼沒寫就已...

    shaonbean 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<