• 【C++笔试强训】第二十七天


    🎇C++笔试强训


    • 博客主页:一起去看日落吗
    • 分享博主的C++刷题日常,大家一起学习
    • 博主的能力有限,出现错误希望大家不吝赐教
    • 分享给大家一句我很喜欢的话:夜色难免微凉,前方必有曙光 🌞。

    在这里插入图片描述

    💦🔥


    选择题

    💦 第一题

    若一个用户进程通过read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是()。

    Ⅰ. 若该文件的数据不在内存中,则该进程进入睡眠等待状态

    Ⅱ. 请求 read 系统调用会导致 CPU 从用户态切换到核心态

    Ⅲ. read 系统调用的参数应包含文件的名称

    A 仅Ⅰ、 Ⅱ
    B 仅Ⅰ、 Ⅲ
    C 仅Ⅱ、 Ⅲ
    D Ⅰ、 Ⅱ和Ⅲ

    在这里插入图片描述

    这道题的答案是A


    💦 第二题

    下列关于虚拟存储的叙述中,正确的是()。

    A 虚拟存储只能基于连续分配技术
    B 虚拟存储只能基于非连续分配技术
    C 虚拟存储容量只受外存容量的限制
    D 虚拟存储容量只受内存容量的限制

    这道题的答案是B


    💦 第三题

    下列选项中,不可能在用户态发生的事件是()。

    A 系统调用
    B 外部中断
    C 进程切换
    D 缺页

    请添加图片描述

    这道题的答案是C


    💦 第四题

    同一进程下的线程可以共享()

    A stack
    B data section
    C register set
    D thread ID

    请添加图片描述

    这道题的答案是B


    💦 第五题

    在缺页处理过程中,操作系统执行的操作可能是()

    Ⅰ.修改页表 Ⅱ.磁盘 I/O Ⅲ.分配页框

    A 仅Ⅰ、 Ⅱ
    B 仅Ⅱ
    C 仅Ⅲ
    D Ⅰ、 Ⅱ和Ⅲ

    在这里插入图片描述

    这道题的答案是D


    💦 第六题

    下面选项中,满足短任务优先且不会发生饥饿现象的调度算法是()

    A 先来先服务
    B 高响应比优先
    C 时间片轮转
    D 非抢占式短任务优先

    在这里插入图片描述

    在这里插入图片描述

    这道题的答案是B


    💦 第七题

    下列选项中,降低进程优先级的合理时机是()

    A 进程的时间片用完
    B 进程刚完成I/O,进入就绪列队
    C 进程持久处于就绪列队
    D 进程从就绪状态转为运行态

    在这里插入图片描述

    这道题的答案是A


    💦 第八题

    在使用锁保证线程安全时,可能会出现活跃度失败的情况,活跃度失败主要包括()

    A 死锁
    B 饥饿
    C 活锁
    D 以上全部

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    这道题的答案是D


    💦 第九题

    下列选项中,导致 创建 新进程的操作是()

    I用户登陆成功

    II设备分配

    III启动程序执行

    A 仅I和II
    B 仅II和III
    C 仅I和III
    D I、II和III

    在这里插入图片描述

    这道题的答案是C


    💦 第十题

    对进程和线程的描述,以下正确的是()

    A 父进程里的所有线程共享相同的地址空间,父进程的所有子进程共享相同的地址空间
    B 改变进程里面主线程的状态会影响到其他线程的行为,改变父进程的状态不会影响到其他子进程
    C 多线程会引起死锁,而多进程不会
    D 以上选项都不正确

    在这里插入图片描述

    这道题的答案是D


    编程题

    🔥 第一题

    链接:不用加减乘除做加法

    在这里插入图片描述

    • 解题思路

    数字的相加可以转换为二进制的加法,注意每一位相加与进位即可

    1. 两个数异或:相当于每一位相加,而不考虑进位;
    • 代码演示
    class Solution {
    public:
        int Add(int num1, int num2) {
              
            while(num2)
            {
                int tmp = num1 ^ num2;
                num2 = (num1 & num2) << 1;
                num1 = tmp;
            }
            return num1;
        }
    };
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    🔥 第二题

    链接:三角形

    在这里插入图片描述

    • 题目解析

    需要了解三角形的组成条件:任意两边相加大于第三边

    • 解题思路

    对输入的三个数字分别进行两两相加与另一个数进行比较

    • 代码演示
    #include 
    using namespace std;
    #define ADD(x,y) ((x)+(y))
    #define CMP(x,y) ((x)>(y))
    
    int main()
    {
        double a,b,c;
        while(cin >> a >> b >> c)
        {
            if(a+b>c && a+c>b && b+c>a)
                cout << "Yes" << endl;
            else
                cout << "No" << endl;
        }
        return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

  • 相关阅读:
    Jmeter+Ant+Git/SVN+Jenkins实现持续集成接口测试,一文精通(一)
    面试经验分享
    若依框架环境的搭建(前后端不分离版)
    Landtasy Summer 系列第二弹!
    EEG 情绪标签 - 简介
    从0开始学go第八天
    java(HashSet类)
    【MATLAB教程案例4】直接序列扩频通信系统的MATLAB仿真
    C++ 性能优化指南 KurtGuntheroth 第7章 优化热点语句 摘录
    CAS:407627-60-5_AF647-NHS酯_Alexa Fluor 647荧光染料
  • 原文地址:https://blog.csdn.net/m0_60338933/article/details/127906221