首页 > 其他分享 >第五天第一个问题

第五天第一个问题

时间:2023-04-17 20:23:10浏览次数:32  
标签:char 第一个 int 头衔 问题 preference 姓名 第五天 cout

问题描述: 编写一个程序,可以使用真实姓名、头衔、秘密姓名或成员偏好来列出成员。编写该程序是,请使用下面的结构:

struct bop{

  char fullname[strsize];//真实姓名

  char title[strsize];//头衔

  char bopname[strsize];//秘密姓名

  int preference;//成员偏好 0=真实名字,1=头衔,2=秘密姓名

};

该程序创建一个由上述结构组成的小型数组,并将其初始化为适当的值。另外,该程序使用一个循环,让用户在下面的选项中进行选择:

  a.display by name  b.display by title

  c.display by bopname   d.display by preference

  q.quit

注意,“display by preference”并不意味着显示成员的偏好,而是意味着根据成员的偏好来列出成员。例如,如果偏好号为1,则选择d将显示程序员的头衔。运行情况如下:

解决思路:

1.用cout语句打印选项给用户选择

2.创建一个循环体,只有读到用户输入q才会停止

3.循环体中建立一个char变量,读入用户输入到变量中去,如果是a则打印结构体数组中的真实姓名,b打印头衔,c打印秘密姓名,d如果偏好是0打印名字,1打印头衔,2打印秘密姓名

代码:

#include <iostream>
using namespace std;
const int strsize = 100;
struct bop{

char fullname[strsize];//真实姓名

char title[strsize];//头衔

char bopname[strsize];//秘密姓名

int preference;//成员偏好 0=真实名字,1=头衔,2=秘密姓名

};
bop c[5];
int main()
{
c[0] =
{
"姓名1",
"头衔1",
"秘密名字1",
0
};
c[1] =
{
"姓名2",
"头衔2",
"秘密名字2",
1
};
c[2] =
{
"姓名3",
"头衔3",
"秘密名字3",
2
};
c[3] =
{
"姓名4",
"头衔4",
"秘密名字4",
1
};
c[4] =
{
"姓名5",
"头衔5",
"秘密名字5",
2
};
char b;
cout << "BOP report" << endl;
cout << " a.display by name  b.display by title"<<endl;
cout << " c.display by bopname   d.display by preference" << endl;
cout << " q.quit"<<endl;
cout << "enter your choice:";
cin >> b;
while (1)
{
if (b == 'a')
{
for (int i = 0; i < 5; i++)
{
cout << c[i].fullname<<endl;
}
}
if (b == 'b')
{
for (int i = 0; i < 5; i++)
{
cout << c[i].title << endl;
}
}
if (b == 'c')
{
for (int i = 0; i < 5; i++)
{
cout << c[i].bopname << endl;
}
}
if (b == 'd')
{
for (int i = 0; i < 5; i++)
{
if (c[i].preference == 0)
{
cout << c[i].fullname << endl;
}
if (c[i].preference == 1)
{
cout << c[i].title << endl;
}
if (c[i].preference == 2)
{
cout << c[i].bopname << endl;
}
}
}
if (b == 'q')
break;
cout << "next choice:";
cin >> b;
}
cout << "Bye!";
return 0;
}

注:因书上题目中未明确结构体中的数据是输入还是直接初始化,这里就直接选择初始化了,改为用户输入也是很简单的,把结构体数组的空间变大,循环输入就可以。

标签:char,第一个,int,头衔,问题,preference,姓名,第五天,cout
From: https://www.cnblogs.com/czfznb/p/17327275.html

相关文章

  • 基于粒子群算法的综合能源优化问题 建立包含冷热电气的综合能源系统,以综合能源运行成
    基于粒子群算法的综合能源优化问题建立包含冷热电气的综合能源系统,以综合能源运行成本最优为目标,建立优化运行模型采用粒子群算法进行优化求解得到各个冷热电设备的最优运行计划里面包含一篇参考的资料代码和资料基本差不多ID:7750672838465384......
  • 百钱百鸡问题
    源代码#include<bits/stdc++.h>usingnamespacestd;intmain(){//百钱百鸡intcock,hen,chicken;for(cock=0;cock<=20;cock++)//控制公鸡数量for(hen=0;hen<=30;hen++)//控制母鸡数量for(chicken=0;chicken<=100;chicken++){chicken=100-cock-hen;if(5*c......
  • cocos studio 发布资源的问题
    即使把图片添加的cocosstudio的项目里面了,如果json资源里面未引用图片,那么发布的时候,就不会出现在res目录,这样程序就没法动态加载里。res和cocosstudio的资源要维护2份,比较麻烦。......
  • #yyds干货盘点# LeetCode程序员面试金典:找出字符串中第一个匹配项的下标
    题目:给你两个字符串 haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从0开始)。如果 needle不是haystack的一部分,则返回 -1。 示例1:输入:haystack="sadbutsad",needle="sad"输出:0解释:"sad"在下标0和6处匹配。第一个匹......
  • 基于多目标粒子群算法的综合能源优化问题 建立了含冷热电的综合能源系统 以新能源供应
    基于多目标粒子群算法的综合能源优化问题建立了含冷热电的综合能源系统以新能源供应商收益 综合能源供应商收益和用户购电成本最小为多目标建立优化模型 采用多目标粒子群算法求解得到冷热电三个不同网络的各个设备的运行计划ID:5450652729289533......
  • elementui select下来内容过长问题解决方案
    :popper-append-to-body="false"必写自定义显示<divclass="select-flow">{{dict.declareConditions}}</div>自定义css样式el-option添加title属性 <el-selectv-model="formData.declCondition"placeholder="请选择"sty......
  • Docker基础命令及面试问题
    Docker包括三个基本概念:镜像(Image):Docker镜像(Image),就相当于是一个root文件系统。比如官方镜像ubuntu:16.04就包含了完整的一套Ubuntu16.04最小系统的root文件系统。容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定......
  • 使用vue-cli创建第一个vue项目
    命令提示符切换至需要创建项目的目录:直接在路径输入cmd在按键盘的enter键打开的终端就直接切换到该目录下(1)输入以下命令:vuecreate项目名称(2)我这里选手动选择,键盘上下按钮,选完后按enter键(3)我这里选Babel和CSS,键盘上下按钮,选中或取消选中按空格,选完后按enter键(4)我这里选......
  • WPF版本问题排坑记录
    先说结论:珍爱生命,远离不明第三方组件库。问题描述:今早摸鱼的时候看见狼哥一个开源项目,我非常感兴趣!结果clone下来之后,没跑起来?嗯?我姿势不对?好!我再跑!结果还是run不起来,无奈求教狼哥本人,狼哥亲自clone之后没在他的机器上重现我这个bug。因为报错的这个库是nuget拉下来的,我们......
  • 记录 RedisTemplate.executePipelined 使用问题
    需求,向redis写入2000万个key@Slf4j@Component("job2")publicclassToRedis2implementsIJob{privateAtomicLongcount=newAtomicLong(0);privateLongoldCount=0L;privateList<String>userIdList=newArrayList<>();pri......