【C++笔试强训】第三十天

🎇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 inode和文件是一一对应的

B inode能描述文件占用的块数

C inode描述了文件大小和指向数据块的指针

D 通过inode实现文件的逻辑结构和物理结构的转换

【C++笔试强训】第三十天

这道题的答案是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 = '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;
    }
}

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/9033400bf8.html