C++笔试强训
- 博客主页:一起去看日落吗
- 分享博主的C++刷题日常,大家一起学习
博主的能力有限,出现错误希望大家不吝赐教
- 分享给大家一句我很喜欢的话:夜色难免微凉,前方必有曙光 。
选择题
第一题
下列关于线程的说法错误的是()
A 耗时的操作使用线程,提高程序响应
B 耗内存的操作使用线程,提高内存利用率
C 多CPU的系统使用线程,提高CPU利用率
D 并行操作使用线程,如c/s架构中服务端程序为每个客户端请求创建一个线程来响应
这道题的答案是B
第二题
如果将固定块大小的文件系统中的块大小设置大一些,会造成()。
A 更好的磁盘吞吐量和更差的磁盘空间利用率
B 更好的磁盘吞吐量和更好的磁盘空间利用率
C 更差的磁盘吞吐量和更好的磁盘空间利用率
D 更差的磁盘吞吐量和更差的磁盘空间利用率
这道题的答案是A
第三题
某系统中有11台打印机,N个进程共享打印机资源,每个进程要求3台,当N的取值不超过()时系统不会发生死锁。
A 4
B 5
C 6
D 7
这道题的答案是B
第四题
进程调度是从()选择一个进程投入运行。
A 就绪队列
B 等待队列
C 作业后备队列
D 提交队列
这道题的答案是A
第五题
下面有关Cache的说法哪一个是不正确的()
A 设置Cache的目的,是解决CPU和主存之间的速度匹配问题
B 设置Cache的理论基础,是程序访问的局部性原理
C Cache与主存统一编址,Cache的地址空间属于主存的一部分
D Cache的功能均由硬件实现,对程序员是透明的
这道题的答案是C
第六题
什么是内存抖动(Thrashing)( )
A 非常频繁的换页活动
B 非常高的CPU执行活动
C 一个极长的执行进程
D 一个极大的虚拟内存
这道题的答案是A
第七题
在所有非抢占CPU调度算法中,系统平均响应时间最优的是( )
A 实时调度算法
B 短任务优先算法
C 时间片轮转算法
D 先来先服务算法
这道题的答案是B
第八题
下面关于inode描述错误的是” />
这道题的答案是A
第九题
文件操作的唯一依据是?
A 文件名
B 文件句柄
C 物理地址
这道题的答案是B
第十题
十进制数-10的3进制4位补码是多少?
A 0010
B 1010
C 2122
D 2121
这道题的答案是C
编程题
第一题
链接:最难的问题
- 解题思路
密码 > ‘E’
则:原文= 密码 – 5
否则: 原文 = 密码 + 21
代码演示
// write your code here cpp#include#include using namespace std;int main(){string n;while(getline(cin,n)){for(auto &e : n){if(e >= 'A' && e <= 'Z')e = (e >= 'F') " />(e - 5) : (e + 21);}cout << n << endl;}return 0;}
第二题
链接:因子个数
- 解题思路
从最小因子2到数字的最大因子数(数字的平方根)开始判断是否能够取余
可以则循环取余直到取余不为0,因子个数+1;否则使用下一个因子计算;
最终整除了各个因子数之后剩余的数字不为1则本身也是一个因子,因此因子数+1
- 代码演示
// write your code here cpp#include #include using namespace std;int main(){int n;while(cin >> n){int count = 0;for(int i = 2;i <= sqrt(n);i++){if(n % i == 0){while(n % i == 0)n /= i;count++;}}if(n != 1)count++;cout << count << endl;}}