实验二 数组、指针与C++数据库

#include<iostream>
#include<string>
using namespace std;

class info
{
private:
    string nick;
    string con;
    string city;
    int n;
public:
    info(string nick,string con,string city,int n);
    void print()
    {
        cout<<"昵称:        "<<nick<<endl;
        cout<<"联系方式:    "<<con<<endl;
        cout<<"所在城市:    "<<city<<endl;
        cout<<"预定参加人数:"<<n<<endl;
    }
};
info::info(string a,string b,string c,int d)
{
    nick=a;
    con=b;
    city=c;
    n=d;
} 
#include"info.hpp"
#include<iostream>
#include<string>
#include<vector>
using namespace std;

int main()
{
    cout<<"录入信息:"<<endl;
    cout<<endl;
    cout<<"称呼/昵称,联系方式(邮箱/手机号),所在城市,预定参加人数"<<endl;
    vector<info>audlience_info_list;
    string nick,con,city;
    int n,a=0;
    while(cin>>nick)
    { 
        cin>>con>>city>>n;
        a+=n;
        if(a>=100)
        {
            cout<<"对不起,只剩"<<100-a<<"个位置."<<endl;
            cout<<"1.输入u,更新(update)预定信息"<<endl;
            cout<<"2.输入q,退出预定"<<endl;
            cout<<"你的选择:";
            char b;
            cin>>b;
            if(b=='q')
            {
                a-=n;
                break;
            }
            a-=n;
            cout<<"请重新输入:"<<endl;    
        }
           info audlience(nick,con,city,n);
        audlience_info_list.push_back(audlience);
    }
    cout<<"截至目前,一共有"<<a<<"位听众预定参加,预定听众信息如下:"<<endl;
    for(int i=0;i<audlience_info_list.size();i++)
        audlience_info_list[i].print();
    return 0;
}

 

 

#include<iostream>
#include<string>
using namespace std;
class textcoder
{
public:
    textcoder(string n_text);
    ~textcoder()=default;
    string encoder()//加密
    {
        for(int i=0;i<text.size();i++)
        {
            if((text[i]>='a'&&text[i]<='u')||(text[i]>='A'&&text[i]<='U'))
                text[i]=text[i]+5;
            else if((text[i]>='v'&&text[i]<='z')||(text[i]>='V'&&text[i]<='Z'))
                text[i]=text[i]-21;
        }
        return text;
    }
    string decoder()//解密
    {
        for(int i=0;i<text.size();i++)
        {
            if((text[i]>='f'&&text[i]<='z')||(text[i]>='F'&&text[i]<='Z'))
                text[i] = text[i] - 5;
            else if((text[i]>='a'&&text[i]<='e')||(text[i]>='A'&&text[i]<='E'))
                text[i]=text[i]+21;
        }
        return text;
    }
private:
    string text;
};
textcoder::textcoder(string n_text)
{
    text=n_text;
}
#include "textcoder.hpp"
#include <iostream>
#include <string>

int main()
{
    using namespace std;

    string text, encoded_text, decoded_text;

    cout << "输入英文文本: ";
    while (getline(cin, text))
    {
        encoded_text = textcoder(text).encoder(); // 这里使用的是临时无名对象
        cout << "加密后英文文本:\t" << encoded_text << endl;

        decoded_text = textcoder(encoded_text).decoder(); // 这里使用的是临时无名对象
        cout << "解密后英文文本:\t" << decoded_text << endl;
        cout << "\n输入英文文本: ";
    }
}

 

posted @ 2021-10-31 16:12  白白的蓝天  阅读(46)  评论(3编辑  收藏  举报