2020级C++实验课-期末机考模拟考题解
做这个题解的理由很简单,有很多同学想写但是不会写,凑巧我写了,所以搞个题解。
顺序就是题单里的顺序(界面左上角菜单切换文章,右上角目录方便查看)
1:黑马白马
题意:
随机得到一个数字,如果是偶数,则输出“黑马”,并得到一颗糖,然后继续;不然则输出“白马”,没有得到糖,并且换人。
题解:
判断一个数是不是偶数(能否被2整除)即可。
上板子:
if (n == 0)continue;
else if (n % 2 == 0)cout << "Black Horse!";
else cout << "White Horse, Bye!" << endl;
2:星号列阵-右三角
题意:
根据输入的数字,画出相对应的靠右的三角形。
题解:
其实就是输出了一个n*n的图,判断一下该不该输出 * 就行,注意行末换行。
上板子:
for (int i = 1;i <= n;i++)
{
for (int j = 1;j <= n;j++)
{
if (j > n - i)cout << '*';
else cout << " ";
}
cout << endl;
}
3:水仙花数
题意:
一个(三位)水仙花数是指一个三位数,其数字本身正好等于其个位数,十位数,及百位数的三次方之和。请问这样的数有多少?
上板子:
void fi(int a)//输入一个数 a,判断它是不是水仙花数(该函数仅限于三位水仙花数)
{
int b, c, d;
b = a % 10;
c = (a / 10) % 10;
d = a / 100;
if (a == (b * b * b + c * c * c + d * d * d))
cout <<" "<< a;
else return ;
}
4:只要大写字母
题意:
输入一个字符串,输出该字符串,但只要字母,并且把所有的字母都换成大写。
题解:
输入字符串,然后一位位判断(小写与大写字母的ASCII码差32),如果是小写,就减32就好了。
由于是含空格的字符串,所以要用getline输入。
上板子:
getline(cin, s);
for (int i = 0;i < s.length();i++)
{
if (s[i] >= 'a' && s[i] <= 'z')
{
s[i] -= 32;
cout << s[i];
}
else if (s[i] >= 'A' && s[i] <= 'Z')
cout << s[i];
}
cout << endl;
5:三哥的行列
题意:
输出每群人年纪第三大的(按照从小到大排序)
题解:
把每组数第三大的数(通过排序)存入一个数组,然后再排序后输出。
这么明白了,怎么可能再给你复制粘贴
6:三的倍数或平方
题意:
判断一个整数是否是3的倍数。如果是3的倍数,则输出其平方;如果不是,则输出其3倍。
题解:
就是题意,没有题解(狗头)
7:素数的和
题意:
输入2个正整数m,n,输出第m个起的n个素数的和。
题解:
暂时没有想到常规的方法,先空着。
8:变量名解析
题意:
输入1个字符串,把所有合法的变量名都解析出来。
题解:
判断合法字符串自己看题目,同时也是一个考点。我这里讲的主要是如何做到符合题意地输出//我因为不合题意错了7次
你需要判断需不需要空格,需不需要换行。
我最后是把所有符合题意的存入一个数组,然后输出。
上板子:
for (int i = 0;i < cnt;i++)
{
cout << sh[i];
if (i != cnt-1)cout << " ";
}
cout << endl;
9:排序&比较
题意:
输入2个数列,分别排序后,输出其各位数字较大的一个。
题解:
输入数组,分别排序,然后用一个循环输出较大的就行了。
10:矩阵的酒窝
题意:
矩阵上的一个点谓之“酒窝”若它比四周的点都小。一个位于边缘的点可以忽略没有“邻居”的那一边。同理,位于4个角的点可以忽略没有“邻居”的那两边。然后输出某个数组“酒窝”的个数。
题解:
二维动态数组
上板子:
int m, n,num=0;
cin >> m >> n;
int** p = new int* [m];
for (int i = 0;i < m;i++)
p[i] = new int[n];
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
cin >> p[i][j];
}
}
for (int i = 0; i < m; i++)
{
if(i==0)
for (int j = 0; j < n; j++)
{
if (j == 0)
{
if (p[i][j + 1] > p[i][j] && p[i + 1][j] > p[i][j])
num++;
}
else if (j == n - 1)
{
if (p[i][j - 1] > p[i][j] && p[i + 1][j] > p[i][j])
num++;
}
else
{
if (p[i][j + 1] > p[i][j] && p[i][j - 1] > p[i][j] && p[i + 1][j] > p[i][j])
num++;
}
}
else if (i == m-1)
for (int j = 0; j < n; j++)
{
if (j == 0)
{
if (p[i][j + 1] > p[i][j] && p[i - 1][j] > p[i][j])
num++;
}
else if (j == n - 1)
{
if (p[i][j - 1] > p[i][j] && p[i - 1][j] > p[i][j])
num++;
}
else
{
if (p[i][j + 1] > p[i][j] && p[i][j - 1] > p[i][j] && p[i - 1][j] > p[i][j])
num++;
}
}
else
for (int j = 0; j < n; j++)
{
if (j == 0)
{
if (p[i][j + 1] > p[i][j] && p[i - 1][j] > p[i][j] && p[i + 1][j] > p[i][j])
num++;
}
else if (j == n - 1)
{
if (p[i][j - 1] > p[i][j] && p[i - 1][j] > p[i][j] && p[i + 1][j] > p[i][j])
num++;
}
else
{
if (p[i][j + 1] > p[i][j] && p[i][j - 1] > p[i][j] && p[i - 1][j] > p[i][j] && p[i + 1][j] > p[i][j])
num++;
}
}
}
cout << num << endl;
for (int i = 0; i < m; i++)
delete[]p[i];
delete[]p;
以上就是本次有点水的题解的全部内容了,不会的可以来问我 // 不一定能马上回
制作:BDT20040
2020级C++实验课-期末机考模拟考题解的更多相关文章
- 2015英特尔® 实感™ (Intel® RealSense™) 动手开发实验课
2015年英特尔® 全球实感技术动手实验课路演来到中国, 这次在中国将有北京和广州两站,包括一天的动手实验室活动 - 面向对感知计算.3D 开发和虚拟现实兴趣浓厚的开发人员.英特尔专家将会指导您如何借 ...
- #012python实验课
通过三到四周的学习Python选修课程已经学到了网络爬虫这一环节. 基础语法混乱 这是,在进行周四实验课程的时候,一直遇到的一个问题.写着写着,就往C语言的语法方向跑了,可以说之前我仅仅是对,pyth ...
- NeHe OpenGL教程 第四十课:绳子的模拟
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 「ZJOI2019」&「十二省联考 2019」题解索引
「ZJOI2019」&「十二省联考 2019」题解索引 「ZJOI2019」 「ZJOI2019」线段树 「ZJOI2019」Minimax 搜索 「十二省联考 2019」 「十二省联考 20 ...
- 18/9/22NOIP模拟考
18/9/22NOIP模拟考 其实本来是有多组数据的,出题人忘记在题面上加了 斜眼笑 期望得分:100:实际得分:100 由于种种原因,拿到题的时候已经过去了0.5h+... 然后因为这道题数据范 ...
- 2020级cpp机考模拟题A卷-#题解1
为了各位朋友的身心健康(不是),我们按照题目难度顺序来写题解. 第一次写题解,希望多点包容和鼓励(恬不知耻 1:谁先输出-4 题意: 输入3个整数,按从大到小的顺序输出,每两个数字间加一个空格. 题解 ...
- 2020级cpp机考模拟题A卷-#题解2
这部分的题目都有一定难度,有兴趣的同学可以钻研一下. 特此感谢来自BDT20030 tql的支持. 2:素数的和-2 题意: 计算不大于m的素数之和.(多么容易理解的题目啊,对吧) 题解(有点复杂的 ...
- 复旦大学2014--2015学年第二学期(14级)高等代数II期末考试第八大题解答
八.(本题10分) 设 $A,B$ 为 $n$ 阶半正定实对称阵, 求证: $AB$ 可对角化. 分析 证明分成两个步骤: 第一步, 将 $A,B$ 中的某一个简化为合同标准形来考虑问题, 这是矩 ...
- 用Python做2048游戏 网易云课堂配套实验课。通过GUI来体验编程的乐趣。
第1节 认识wxpython 第2节 画几个形状 第3节 再做个计算器 第4节 最后实现个2048游戏 实验1-认识wxpython 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiy ...
随机推荐
- ES6-11学习笔记--代理Proxy
Proxy代理 常用拦截方法 ES5拦截: let obj = {} let newVal = '' Object.defineProperty(obj, 'name', { get() { cons ...
- leetcode-剑指 Offer II 012. 左右两边子数组的和相等
题目描述: 给你一个整数数组 nums ,请计算数组的 中心下标 . 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和. 如果中心下标位于数组最左端,那么左侧数之和视为 ...
- 静态变量和成员变量的区别、final修饰特点、创建对象的内存图、静态内存图
静态变量和成员变量的区别* 静态变量也叫类变量 成员变量也叫对象变量* A:所属不同 * 静态变量属于类,所以也称为为类变量 * 成员变量属于对象,所以也称为实例变量(对象变量)* B:内存中位置不 ...
- 谈谈Spring中都用到了哪些设计模式?
谈谈Spring中都用到了哪些设计模式? JDK 中用到了那些设计模式?Spring 中用到了那些设计模式?这两个问题,在面试中比较常见.我在网上搜索了一下关于 Spring 中设计模式的讲解几乎都是 ...
- 通过uniCloud白捡一个在线图库管理工具,可支持图床外链
喜欢写文章的技术大佬们,应该都有一个自己的在线图片管理工具吧. 尤其是在写markdown时,为了让我们的文章"图文并茂",显得不那么枯燥,就经常需要在合适的地方插入一些关联性的图 ...
- linux运行二进制文件编写方式
chmod +x ./test.sh #使脚本具有执行权限 ./test.sh #执行脚本 注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test. ...
- python中的嵌套
嵌套:将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套.既可以在列表中嵌套字典,也可以在字典中嵌套列表,甚至在字典中嵌套字典. 一.列表中嵌套字典 1)一般创建方式: student_ ...
- c#中判断类是否继承于泛型基类
在c#中,有时候我们会编写类似这样的代码: public class a<T> { //具体类的实现 } public class b : a<string>{} 如果b继承a ...
- 前端性能优化之js,css调用优化
规则1:减少HTTP请求 把多个JS请求合并为一个JS请求,把多个CSS请求合并为一个CSS请求.从而减少从客户端向服务器端的请求数. 规则3:添加Expires头 用http ...
- Flex 的 多种对齐属性
1. html 结构 <div id="container"> <div class="item item-1"> <h3> ...