使用结构体输入参加某会议成员的信息,并计算男女比例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' && 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 定义结构体时提示应输入声明_C++|了解结构体的内存对齐(成员声明的顺序影响占用空间大小)...
我们使用的电子计算机绝大部分都是冯·诺依曼结构的机器,遵循"存储程序"的概念.数据处理以存储为前提,在编程中数据如何"存得进去,取得出来",并且符合空间.时间效 ...
- C# 8: 可变结构体中的只读实例成员
在之前的文章中我们介绍了 C# 中的 只读结构体(readonly struct)[1] 和与其紧密相关的 in 参数[2]. 今天我们来讨论一下从 C# 8 开始引入的一个特性:可变结构体中的只读实 ...
- 【C语言结构体题】定义用于存储学生信息的结构体数组,输入学生的准考证号、姓名和成绩信息,计算总分,并按总分由高到低输出。
在此基础上,增加下列功能函数 1.学生信息查询功能,根据学生的准考证号查询学生成绩信息 2.学生信息插入功能,在结构体数组的指定位置插入学生信息 3.学生信息删除功能,根据准考证号来删除满足条件的学生 ...
- 题9.1:定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天, 注意闰年问 题。
题目 本题是谭浩强<C程序设计课后习题>题9.1. 题目: 1.定义一个结构体变量(包括年.月.日).计算该日在本年中是第几天, 注意闰年问 题. 以下是本篇文章正文内容,欢迎朋友们进行指 ...
- 定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。
定义一个结构体变量(包括年.月.日).计算该日在本年中是第几天,注意闰年问题. 解题思路: 用一个日期数组保存每一月的天数,二月的天数记为28天,后面根据输入的时间确定是否是闰年的二月,如果是,天数在 ...
- 定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天?注意闰年问题
定义一个结构体变量(包括年.月.日).计算该日在本年中是第几天?注意闰年问题 #include<stdio.h>struct Date{int year;int month;int day ...
- 定义一个结构体变量(包括年,月,日)。计算该日在本年中是第几天,注意闰年问题。
定义一个结构体变量(包括年,月,日).计算该日在本年中是第几天,注意闰年问题. #include <stdio.h> #include <stdlib.h> struct Da ...
- C语言结构体赋值和有指针成员的结构体赋值
1 结构体赋值 #include <windows.h>struct MyStruct {int a;int b;char c[20]; };int APIENTRY WinMain(H ...
- bool c语言_C/C++编程笔记:C语言结构体—位域,如何指定成员变量所占Bit?
有些数据在存储时并不需要占用一个完整的字节,只需要占用一个或几个二进制位即可.比如开关只有通电和断电两种状态,用 0 和 1 表示足以,也就是用一个二进位.正是基于这种考虑,C语言又提供了一种叫做位域 ...
- C语言边角料:结构体中指针类型的成员变量,它的类型重要吗?
一.前言 昨天在编译代码的时候,之前一直OK的一个地方,却突然出现了好几个 Warning! 本着强迫症要消灭一切警告的做法,最终定位到:是结构体内部, 指向结构体类型的指针成员变量导致的问题. 这个 ...
最新文章
- KernelPCA进行非线性数据的映射和分类
- 低代码发展系列专访之五:低代码的最大价值点是“技术平民化”吗?
- 软考信息安全工程师学习笔记目录
- telnet命令 date命令
- av linux,linux下的开源clanav
- c语言 结构体的,c语言之结构体
- 风控分析秘籍R-I-S-K
- Solidity的三种合约间的调用方式 call、delegatecall 和 callcode
- 从命令行安装IIS 7.0
- Nero 7序列号的验证方法
- css单线边框_css border-collapse设置表格单线边框和双线边框
- 唯品会密码JS解密与python模拟登录
- mac 高清壁纸推荐
- if函数多个条件php,excelif函数的多个条件使用方法
- android framelayout 高度,Android SupportLib – FrameLayout在CoordinatorLayout中与AppBarLayout消耗整个屏幕高度...
- 暑期实训项目(2)--推特爬虫数据处理
- Windows icon缓存的清理
- Java同步技术(十)
- Coarse-Grain Fine-Grain Coattention Network for Multi-Evidence Question Answering
- Win7减肥攻略及小技巧
热门文章
- 功不唐捐 玉汝于成---贪心算法终结
- java软尾山地车评测_JAVA FURIA 27.5入门软尾山地车评测
- 小程序云开发前端显示云存储的图片
- java exit code 137_运维:k8s pod erro exit code 137
- Android设置网络图片为手机背景图片的方法
- js判断浏览器是pc端还是手机端
- 入门HTML之表格属性bgcolor background bordercolor(light dark)
- 常见服务器默认管理口地址
- 【模型导出与部署】项目接口与百度机器人对接
- tensorflow graphics详解