IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 使用结构体输入参加某会议成员的信息并计算男女比例,有选择性地将某类信息进行显示C++ -> 正文阅读

[C++知识库]使用结构体输入参加某会议成员的信息并计算男女比例,有选择性地将某类信息进行显示C++

在AMTA会议上,主要参会人员一共有七个,其中对应他们的名字调出他们的职位以及爱好,年龄,性别等。要求输入a时为名字,b为职位,c为个人简称,d为爱好,e为年龄,p为性别,q为退出,并计算男女比例。(case字母不区分大小写。成员信息后续可以直接读取txt文件,这里由于人员较少,我选择直接手动给定一个数组。)

代码如下:

//AMTA会议

#include <iostream>

using namespace std;

const int strsize = 30;
const int NUM = 8;
double malenum = 0.0;
double femalenum = 0.0;
double ratio;

//构造显示函数:
void display_name();
void display_title();
void display_amtaname();
void display_preference();
void display_age();
void display_sex();

//构建结构体,其中s是性别的另一种表达,s=0,1;0为女性,1为男性
struct amta
{
    char fullname[strsize];
    char title[strsize];
    char amtaname[strsize];
    char sports[strsize];
    int age;
    string sex;
    int s;
};

//输入结构体数组的内容
amta people[8] =
    {
        {"Derri Bai", "Chief Executive Officer", "BCEO", "Basketball", 35, "male", 1},
        {"Smit Eri", "Junior Programmer", "JPS", "Ping Pong", 35, "male", 1},
        {"Tank Du", "Chairman of Board", "CBD", "Swim", 45, "female", 0},
        {"Tiger Guo", "Manager", "MG", "Liao Mei", 34, "male", 1},
        {"Pen Yu", "Analyst Trainee", "ATY", "Study", 43, "female", 0},
        {"Ha Huan", "Chief Maintenance Officer", "CMOH", "Game", 35, "male", 1},
        {"Bo Wan", "Chief Technology Officer", "CTOW", "Basketball", 34, "male", 1},
        {"SY San", "Staf", "WSYS", "Song", 32, "female", 0}};

//定义显示函数
void display_name()
{
    for (int i = 0; i < NUM; i++)
        cout << "Fullname: " << people[i].fullname << endl;
}

void display_title()
{
    for (int i = 0; i < NUM; i++)
        cout << "Title: " << people[i].title << endl;
}

void display_amtaname()
{
    for (int i = 0; i < NUM; i++)
        cout << "Amtaname: " << people[i].amtaname << endl;
}

void display_preference()
{
    for (int i = 0; i < NUM; i++)
        cout << people[i].fullname << " 's preference is: " << people[i].sports << endl;
}

void display_age()
{
    for (int i = 0; i < NUM; i++)
        cout << people[i].fullname << " 's age is: " << people[i].age << endl;
}

void display_sex()
{
    for (int i = 0; i < NUM; i++)
        cout << people[i].fullname << " 's sex is: " << people[i].sex << endl;
}

//主函数
int main()
{
    char ch;

    cout << "Benevolent Order of Programmers Report" << endl;
    cout << "a. display by name          b. display by title\n"
         << "c. display by amtaname       d. display by preference\n"
         << "e. display by age           p. display by sex\n"
         << "q. putout ratio and quit" << endl;

    cout << "Enter a case: ";

    while (cin >> ch && ch != 'q')
    {
        switch (ch)
        {
        case 'a':
        case 'A':
            display_name();
            break;
        case 'b':
        case 'B':
            display_title();
            break;
        case 'c':
        case 'C':
            display_amtaname();
            break;
        case 'd':
        case 'D':
            display_preference();
            break;
        case 'e':
        case 'E':
            display_age();
            break;
        case 'p':
        case 'P':
            display_sex();
            break;
        }
        cout << "Next case: ";
    }

//统计男女人数,输出比例并计算比率
    for (int i = 0; i < NUM; i++)
    {
        if (people[i].s == 1)
        {
            malenum++;
        }
        else if (people[i].s == 0)
        {
            femalenum++;
        }
    }
    ratio = malenum / femalenum;
    cout << "Number of male and female are: " << malenum << ":" << femalenum << endl;
    cout << "The ratio of people is:" << ratio << endl;
    cout << "Bye!" << endl;

    return 0;
}

?结果如下:

?这道简单的题目属于自编题。

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-02 16:34:44  更:2021-12-02 16:35:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:04:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码