0
点赞
收藏
分享

微信扫一扫

使用C++实现在类中存储成员信息并存取

数数扁桃 2022-04-14 阅读 8

能够存储固定的一些姓名和信息,同时能够键入新成员,实现成员查找和全部输出。

 直接上代码

#include <iostream>
using namespace std;

#define N  2         //新输入人数
#define pe_mum 6    //已有成员人数
class Works  //创建类
{
public:
    void input();//查找已有成员
    void output();//输出所有成员
    void task_init();//初始化已有成员
    void key_in()//输入新成员
    {
        int a = 0, s = 0;
        for (a = 0; a < N; a++)
        {
            s = a + 1;
            cout << "请输入第" << s << "个姓名" << endl;
            cin >> name[a];
            cout << "请输入任务" << endl;
            cin >> task[a];
        }
    }

    //新成员
    string name[N + 1];
    string task[N + 1];
    //已有成员
    string name2[pe_mum + 1];
    string task2[pe_mum + 1];
};

void Works::task_init()
{
    name2[0] = "一";
    task2[0] = "任务1";
    name2[1] = "二";
    task2[1] = "任务2";
    name2[2] = "三";
    task2[2] = "任务3";
    name2[3] = "四";
    task2[3] = "任务4";
    name2[4] = "五";
    task2[4] = "任务5";
    name2[5] = "六";
    task2[5] = "任务6";
}

void Works::input()//单个查找
{
    int i = 0, k = 0, h = 0;
    string j;
    cout << "输入姓名" << endl;
    cin >> j;

    //printf("有新增成员\n");
    while (name2[i] != "")
    {
        if (j.compare(name2[i]) == 0)//相同
        {
            cout << "姓名:" << name2[i] << endl;
            cout << "任务:" << task2[i] << endl;
            h = 1;
        }
        i++;
    }
    while (name[k] != "")
    {
        if (j.compare(name[k]) == 0)//相同
        {
            cout << "姓名:" << name[k] << endl;
            cout << "任务:" << task[k] << endl;
            h = 2;
        }
        k++;
    }
    if (h == 0)
    {
        cout << "查询无果" << endl;
    }
}

void Works::output()//全部
{
    int i = 0, h = 0;
    while (name2[i] != "")
    {
        cout << "姓名:" << name2[i];
        cout << "\t\t" << task2[i] << endl;
        i++;
    }
    while (name[h] != "")
    {
        cout << "姓名:" << name[h];
        cout << "\t\t " << task[h] << endl;
        h++;
    }
}

int main()
{
    Works work;
    char key;
    string model;
    work.task_init();
    while (1)
    {
        cout << "请选择功能:1-查找;2-读取全部;3-输入新成员" << endl;
        cin >> model;

        if (model == "1")//输出单个
        {
            work.input();
        }
        else if (model == "2")//读取全部
        {
            work.output();
        }
        else if (model == "3")//输入
        {
            work.key_in();
        }
        else
        {
            cout << "error" << endl;
        }
        cout << "k-继续" << endl;
        cin >> key;

        if (key != 'k')
        {
            break;
        }

    }
    return 0;
}

 

举报

相关推荐

0 条评论