2020级cpp上机考试题解#B卷
A卷的第七题我只会一个个排除的方法
意思就是暂时没有好办法所以A卷不搞了
1:递归函数求数列
题意:
有一个递归函数int f(int m),计算结果代表了数列的第m项。当m等于1时,函数结果返回1;当m等于2时,函数结果返回3;当m大于2时,函数结果返回3*f(m-1)+2*f(m-2)。请在主函数中输入正整数m,然后调用f函数求数列第m项,最后在主函数中输出。
题解:
题目中给定了m的范围(m<18)所以大家都可以大胆按照题意用递归不怕超时。记得每个输出后都要换行。
上板子:
int f(int m)
{
if (m == 1)return 1;
else if (m == 2)return 3;
else if (m > 2)return 3 * f(m - 1) + 2 * f(m - 2);
else return 0;
} int main()
{
int n;
cin >> n;
while (n--)
{
int m;
cin >> m;
cout << f(m) << endl;
}
return 0;
}
2:两点之间的距离
题解:
平方用n*n,开方用sqrt()。
3:输出数字II
题意:
输出从a到1的所有数字
题解:
输出从a到1的所有数字,数字之间不要留空格。不要换行。且a是正整数,不用分类讨论考虑a为负数的情况。
上板子:
int main()
{
int n;
cin >> n;
for (int i = n;i >= 1;i--)
{
cout << i;
}
return 0;
}
4:奇数偶数
题意:
根据一个整数的奇偶性,输出对应的结果。如果n是奇数,那么输出Odd;如果n是偶数,那么输出Even。
题解:
用到被2整除取余的思路。偶数余数为0,(奇数余数为1?)所以用到 % 2 == 0 这样一个简单的判断就好了。
这里注意一个点!由于不排除n是负数的可能性,所以不要用 % 2 == 1 来判断奇数,用 else 就行了。
5:星座
题意:
已知12星座的时间范围,输入一个日期,输出该日期对应的星座英文名。
题解:
先判断月份后判断日,或者两个一起判断,这里就不多做解释了。
6:背包客
题意:
小倩学姐喜欢背包旅游,她有一个标准的可随身携带的背包。一个物品需要符合下列规则才可以装入背包:1)尺寸小于等于20*20*20cm(即长、宽、高都不能大于20cm);2)并且重量不超过7kg。请输入4个正整数a,b,c和w,分别代表当前物品的长、宽、高和重量,然后判断是否能装入背包。如果能装入,则输出“Yes”,否则输出“No”。
题解:
一个 if 搞定的事情:
if (a > 20 || b > 20 || c > 20 || d > 7)
cout << "No"<<endl;
else cout << "Yes"<<endl;
或者用&&,自己随意。
7:整型数组
题意:
定义一个长度为100的整型数组,前50个元素分别赋值为1、3、5、7、...、99,后50个元素通过键盘输入。然后把数组各个元素从后到前依次输出。每两个元素之间有一个空格。最后一个元素后面不要有空格,不要换行。
上板子(这题不知道怎么搞题解):
int main()
{
int a[101] = { 0 };
for (int i = 1;i <= 50;i++)//前50个数,按照题目给定的规律
{
a[i] = 2 * i - 1;
}
for (int i = 51;i <= 100;i++)
{
cin >> a[i];//依次输入后50个数
}
for (int i = 100;i >= 1;i--)
{
cout << a[i];
if (i != 1)cout << " ";//判断是否应输出“ ”
}
return 0;
}
8:最大的两个数的和
题意:
按照指定的公式生成m个整数,输出其中最大的两个数的和。

题解:
很明显,难度在于这个看起来很离谱的数值范围,他让我看起来就像是一道注定会一直黄色的题目。
我一开始尝试使用数组去做这题,试了很多遍,就没成功过
第二次用的函数去写,还是错了(后来发现是内容写错了不是使用函数的原因)
最后的版本看起来其实不难也不复杂,不过要是能一上来就想到那也是厉害了
有兴趣的人可以把这串代码改成函数形式,看看能不能通过hhh
上板子:
long long int num1 = 1, num2;
cin >> m >> a >> b >> c;
long long int m1 = 1, m2 = 0;//两个最大值,由于已给一个d[1]=1,所以 m1 初始值赋为1
for (int i = 2;i <= m;i++)
{
num2 = (num1 * a + b) % c;//题目所给的公式
if (num2 > m2)
{
m2 = num2;
if (m2 > m1)
{
swap(m1, m2);//按照我的运算,m2 <= m1
}
}
num1 = num2;
}
9:字符串变换
题意:
把一个字符串中的所有大写字符按照以下规则进行变换:把A变成Z,B变成Y,C变成X,...,X变成C,Y变成B,Z变成A。字符串中的其它字符不要变换。
题解:
题目告诉你了字符串不含空格,所以放心用 cin 跟 string 。
至于转换方式我是没什么新意,就提供几个小思路。
1)暴力方法1:if(s[i]=='A')s[i]='Z'; //这个方法不用脑子,我觉得特别适合我这样宁可多打几个字也不去想别的方法的人
2)暴力方法2:switch 具体参考暴力1. //也可以建一个数组包含所有大写字母,可能会方便一点点
3)转换为ASCII码后取对称,然后再转回去
10:尚可过否
题意:
写一个程序判断同学们的成绩。程序的运算方式为:每次输入四个数字a,b,c,d,分别代表一个学生的出勤分数、平时分数、期中分数和期末分数。输入完后,程序计算该生的总评成绩,公式为:总评成绩=a+b+c*0.3+d*0.5。最后总评成绩如果大于等于60分,则输出“Pass”,否则输出“Fail”。
题解:
题目开头可以直接忽略,只看最后两句话就行。
具体操作也不难,计算并判断总评成绩与60分的关系就行。
以上就是本文的全部内容了,祝各位下学期顺顺利利。
制作:BDT20040
2020级cpp上机考试题解#B卷的更多相关文章
- 2020级cpp机考模拟题A卷-#题解1
为了各位朋友的身心健康(不是),我们按照题目难度顺序来写题解. 第一次写题解,希望多点包容和鼓励(恬不知耻 1:谁先输出-4 题意: 输入3个整数,按从大到小的顺序输出,每两个数字间加一个空格. 题解 ...
- 2020级cpp机考模拟题A卷-#题解2
这部分的题目都有一定难度,有兴趣的同学可以钻研一下. 特此感谢来自BDT20030 tql的支持. 2:素数的和-2 题意: 计算不大于m的素数之和.(多么容易理解的题目啊,对吧) 题解(有点复杂的 ...
- CCF计算机职业资格认证考试题解
CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF计算机职业资格认证考试题解 CCF计算机软件能力认证(简称CCF CSP认证)是CCF计算机职业资格认证系 ...
- Twin Prime Conjecture(浙大计算机研究生保研复试上机考试-2011年)
Twin Prime Conjecture Time Limit: 2000/1000 MS (Java/Othe ...
- HDU 1234 (浙大计算机研究生复试上机考试-2005年) 开门人和关门人 (水)
开门人和关门人 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...
- 发现护考上机考试的一个bug:附软件截图(模拟软件)
目录: 一.文章主旨 二.问题发现的起因 三.bug(问题)描述 四.软件截图 五.我的思考 六.一点期盼 一.文章主旨: 2019年5月18.19.20日,又是一年一度的护资考试(上机考),考试前夕 ...
- 2020级C++实验课-期末机考模拟考题解
做这个题解的理由很简单,有很多同学想写但是不会写,凑巧我写了,所以搞个题解. 顺序就是题单里的顺序(界面左上角菜单切换文章,右上角目录方便查看) 1:黑马白马 题意: 随机得到一个数字,如果是偶数,则 ...
- 6.5 THUSC 考试题解
QAQ 由于并没有数据,而且没有A掉的是提交答案题目,所以并没有修改 QAQ 只能放题解了,代码还没有拿到,不过在清华听了一波习题讲评的安利 第一题 成绩单 先说暴力分 对于单调序列来说最优决策一定是 ...
- LJ 5月6日A组考试考试题解
[题目] T1(L2837) 晚餐队列安排 [题面] 为了避免餐厅过分拥挤,FJ要求奶牛们分2批就餐.每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想,所有第2批就餐的奶牛排在队尾,队伍的前半部分 ...
随机推荐
- IPhoneX网页布局简介
IPhoneX全面屏是十分科技化的,但是由于其圆角和摄像头刘海位置以及操控黑条的存在使得我们需要去对其样式做一些适配,没有X的同学可以开启 Xcode 9 的iPhone X 模拟器作为学习和调试. ...
- 关于mui中一个页面有有多个页签进行切换的下拉刷新加搜索问题
此图是最近做的项目中的一页,用的是mui结合vue,用了mui后,觉得是真心难用啊,先不说其他的,就光这个下拉刷新就让人奔溃了,问题层出不穷,不过最后经过努力还是摆平了哈. 1.每次切换到新的标签,都 ...
- ES6-11学习笔记--数组遍历
ES5中数组遍历方式: for循环 forEach():没有返回值,只是针对每个元素调用func map():返回新的Array,每个元素为调用func的结果 filter():返回符合func条件的 ...
- PAT B1013 数素数
输入样例: 5 27 输出样例: 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 解题思路: 从2开始 ...
- 大数据学习之路之ambari配置(二)
按照网上的教程配置,发现配置到hadoop虚拟机内存就开始不够了,心累
- 访问控制中默认,public,private,protected区别?
2.继承的访问控制: (比如一个类中的protected成员对于"不同的包中的非子类"是不可见的. 说明:1.任何public的内容可以被从任何地方访问. 2.private的成员 ...
- 小程序colorui框架引入与使用
colorui是UI框架: 超好用的一款 小程序二维码体验: : 引入方式: 1.先去下载colorui https://github.com/weilanwl/ColorUI 把col ...
- js获取异步方法里面的数据
这里介绍 五种方法(说白了本质 就三种) 1.callback回调函数 function getData(callback){ setTimeout(()=>{ let name = '哈哈 ...
- 小程序获取自定义属性之e.target与e.currentTarget
彻底弄懂小程序e.target与e.currentTarget 一.小程序中关于事件对象 e 的属性中有两个特别重要的属性:target与currentTarget属性:对于这两个属性,官方文档上 ...
- 基于express框架的留言板实现步骤
这个留言板是基于express框架,和ejs模板引擎,首先需要在根目录安装express框架,然后安装ejs模块和body-parser(获取用户表单提交的数据):建立项目目录 message,然后依 ...