【笔试强训】Day 4

news2025/1/16 5:32:19

🌈欢迎来到笔试强训专栏


  • (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是Scort
  • 目前状态:大三非科班啃C++中
  • 🌍博客主页:张小姐的猫~江湖背景
  • 快上车🚘,握好方向盘跟我有一起打天下嘞!
  • 送给自己的一句鸡汤🤔:
  • 🔥真正的大师永远怀着一颗学徒的心
  • 作者水平很有限,如果发现错误,可在评论区指正,感谢🙏
  • 🎉🎉欢迎持续关注!
    在这里插入图片描述

请添加图片描述

笔试强训解析

  • 🌈欢迎来到笔试强训专栏
    • 🌈选择题
    • 🌈编程题
      • 1️⃣计算糖果
      • 2️⃣进制转换
  • 📢写在最后

请添加图片描述

🌈选择题

有以下程序

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
	int m=0123, n=123;
	printf("%o %o\n", m, n);
	return 0;
}

程序运行后的输出结果是(做错了
A 0123 0173
B 0123 173
C 123 173
D 173 173

  • 首先要区分各种进制的表达格式
  • %o 是八进制方式输出的
  • 最后是如何进行进制间的转化:先%/,直到等于0

在这里插入图片描述

答案选B

以下哪个选项一定可以将flag的第二个bit置0()
A flag&=~2
B flag|=2
C flag^=2
D flag>>=2

  • 先来复习一下:按位或(有真为真)、按位与(都真为真)、按位异或 (相同为0,相异为1)

在这里插入图片描述

答案选A

请声明一个指针,其所指向的内存地址不能改变,但内存中的值可以被改变(知道原理还做错了

A const int const *x = &y;
B int * const x = &y;
C const int *x = &y;
D int const *x = &y;
E const int * const x = &y;

  • 还是const的使用,谁在const的后面就是不能改变
  • 要求所指向的内存地址不能改变,内存中的值可以被改变:即x不能变,*x解引用的值可以改变

答案选B

以下C语言指令:运行结果是什么?

int a[5] = {1,3,5,7,9};
int *p = (int *)(&a+1);
printf(%d,%d”,*(a+1)*(p-1));

A 2,1
B 3,1
C 3,9
D 运行时崩溃

  • 只有在&sizeof之后,才表示数组本身,其余都表示首元素的地址
  • &a是一个地址,该地址类型为: int(*)[5]
  • 所以&a + 1 ,跨越了一个数组大小,p被强转为(int*),p-1指向9

在这里插入图片描述

答案选C

二维数组X按行顺序存储,其中每个元素占1个存储单元。若X[4][4]的存储地址为Oxf8b82140,X[9][9]的存储地址为Oxf8b8221c,则X[7][7]的存储地址为(没看懂)

A Oxf8b821c4
B Oxf8b821a6
C Oxf8b82198
D Oxf8b821c0

  • 复杂点的解方程计算

在这里插入图片描述

答案选A

根据下面递归函数:调用函数Fun(2),返回值是多少()

int Fun(int n)
{
	if(n==5)
		return 2;
	else
		return 2*Fun(n+1);
}

A 2
B 4
C 8
D 16

这个自己套一下就出来结果了,就不说了

答案是D

以下程序的输出结果是:

#include <iostream>
using namespace std;
void func(char **m)
{
	++m;
	cout<<*m<<endl;
}

int main()
{
	static char *a[]={"morning", "afternoon", "evening"};
	char **p;
	p=a;
	func(p);
	return 0;
}

A afternoon
B 字符o的起始地址
C 字符o
D 字符a的起始地址

  • 数组名表示数组首元素的地址,只有在&和sizeof之后才表示数组本身,所以这里的*a指的是首元素的地址也就是morning的地址
  • “morning” —> char* ,所以p必须给成二级指针
  • ++m也就是偏移一个元素的大小,也就是指向了afternoon

在这里插入图片描述

答案选A

求函数返回值,输入x=9999

int func(int x){
int count=0;
while (x)
{
	count++;
	x=x&(x-1);//与运算
}
return count;
}

A 8
B 9
C 10
D 12

  • 首先我们来看看这个算法是什么来头
  • 接下来就算9999的二进制中有多少个1?算呗

在这里插入图片描述

答案是A

#include <stdio.h>
int cnt = 0;
int fib(int n) 
{
	cnt++;
	if (n == 0)
		return 1;
	else if (n == 1)
		return 2;
	else
		return fib(n - 1) + fib(n - 2);
}
void main() {
	fib(8);
	printf("%d", cnt);
}

下列程序执行后,输出的结果为()
A 41
B 67
C 109
D 177

  • cnt实际统计的是:斐波那契递归的总次数

在这里插入图片描述

答案选B

在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是()

struct A
{
	int a;
	short b;
	int c;
	char d;
};
struct B
{
	int a;
	short b;
	char c;
	int d;
};

A 16,16
B 13,12
C 16,12
D 11,16

  • 又是结构体对齐,老生常谈了

在这里插入图片描述

答案选C

🌈编程题

1️⃣计算糖果

题目地址:传送

在这里插入图片描述

解题思路:

  • 枚举法: 算出A、B1、B2、C的表达式,若B1==B2即可知道abc的值为真
  • 在这里插入图片描述
    不多说上代码:
#include <iostream>
using namespace std;

int main() {
    int a,b,c,d;//输入的4个整数
    cin>>a>>b>>c>>d;
    //每个人手里的糖果
    int A = (a+c)/2;
    int B1 = (b+d)/2;
    int B2 = (c-a)/2;
    int C = (d-b)/2;

    if(B1 != B2)
    {
        cout<<"No"<<endl;
    }
    else
    {
        cout<<A<<" "<<B1<<" "<<C<<endl;
    }
}

2️⃣进制转换

题目地址:传送

在这里插入图片描述
解题思路:

  • 首先建立两个字符串s和table分别来存放最后的输出结果、进制的对应各个数字
  • 求得M中的每个数位上的数字(通过%/来实现)
  • M求出的结果放进字符串s中,最后倒置字符串
  • 如果M为负数,注意设flag进行区分处理

在这里插入图片描述

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main() {
    string s = "",table = "0123456789ABCDEF";
    int m, n;
    cin>>m>>n;
    
    //注意当m<0的时候
    bool flag = false;
    if(m < 0)
    {
        m = -m;
        flag = true;
    }
    //注意当m=0的时候
    if(m == 0)
    {
        s = "0";
    }

    while(m)
    {
        s += table[m%n];
        m /= n;
    }
    
    if(flag == true)
    {
        s += '-';
    }

    //逆置字符串 :3 2 1 -
    reverse(s.begin(), s.end());
    cout<<s<<endl;
}

📢写在最后

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/44942.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

初识数据结构

目录 1. 集合的框架 集合框架的重要性 数据结构的介绍 算法的介绍 容器背后对应的数据结构 2. 时间复杂度和空间复杂度 算法效率 时间复杂度 时间复杂度的概念 大O的渐进表示法 常见的时间复杂度的计算 空间复杂度 空间复杂度的概念 从本章开始又要开始新的篇章&a…

流媒体传输 - RTMP 协议报文分析

握手之后&#xff0c;连接开始对一个或多个 chunk stream 进行合并。创建的每个块都有一个唯一 id 对其进行关联&#xff0c;这个 id 叫做 chunk stream id。这些块通过网络进行传输。传递时&#xff0c;每个块必须被完全发送才可以发送下一块。在接收端&#xff0c;这些块被根…

【毕业设计】深度学习车辆颜色识别检测系统 - python opencv YOLOv5

文章目录1 前言2 实现效果3 CNN卷积神经网络4 Yolov55 数据集处理及模型训练6 最后1 前言 &#x1f525; Hi&#xff0c;大家好&#xff0c;这里是丹成学长的毕设系列文章&#xff01; &#x1f525; 对毕设有任何疑问都可以问学长哦! 这两年开始&#xff0c;各个学校对毕设…

pytorch初学笔记(十三):神经网络基本结构之Sequential层的使用以及搭建完整的小型神经网络实战

目录 一、Container下Sequential层的介绍 1.1 作用 1.2 Example 二、实战神经网络搭建以及sequential的使用 2.1 前期准备 2.1.1 神经网络模型 2.1.2 求卷积过程中的padding参数 2.2 网络搭建 2.3 sequential的使用 2.4 检验网络正确性 三、完整代码 3.1 控制台输出 …

【Rust日报】2022-11-28 使用 Rust 编写解释型语言

使用 Rust 编写解释型语言这是一本关于使用 Rust 来编写解释型语言的指导书.从理论基础, 内存分配, 真实实践, GC 等方面循序渐进的指导如何使用 Rust 来编写解释型语言.原文链接: https://rust-hosted-langs.github.io/book/introduction.htmlRust的所有权和生命周期这是一篇从…

Java数据审计工具:Envers and JaVers比较

在Java世界中&#xff0c;有两种数据审计工具&#xff1a;Envers和JaVers。 Envers已经存在了很长时间&#xff0c;它被认为是主流。 JaVers提供全新的方法和技术独立性。 如果您考虑哪种工具更适合您的项目&#xff0c;本文是一个很好的起点。 本文分为三个部分。首先&#x…

[附源码]计算机毕业设计springboot电影院网上售票系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

SQL注入漏洞 | bool型

文章目录前言MySQL bool型前言 SQL注入漏洞 | iwebsecSQL注入漏洞 | 数字型参考文章文章所涉及的脚本代码&#xff0c;可以自己动手敲一次&#xff0c;增进理解&#xff0c;形成自己的SQl注入脚本&#xff0c;以后可以不断复用。 MySQL bool型 随便试试看回显 bool注入原理…

毕业设计 单片机LSRB算法的走迷宫小车 - 嵌入式 stm32

文章目录0 前言1 简介2 主要器件3 实现效果4 硬件设计马达驱动器(L298N)Mpu 605060 RPM 直流电机红外传感器Arduino Pro mini5 软件说明“LSRB”算法6 最后0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&a…

小米三季报:手机不振,汽车加码

配图来自Canva可画 ​如果将2022年第一季度的滑落视作气温转冷的话&#xff0c;那么小米的冬天已经持续了三个季度了。 小米不久前发布的2022年第三季度财报显示&#xff0c;小米在第三季度营收、毛利、调整后利润或多或少地都在下降&#xff0c;经营利润更是“扭盈为亏”&am…

Spring Boot Admin 监控指标接入Grafana可视化

其他相关文章&#xff1a; Spring Boot Admin 参考指南SpringBoot Admin服务离线、不显示健康信息的问题Spring Boot Admin2 EnableAdminServer的加载Spring Boot Admin2 AdminServerAutoConfiguration详解Spring Boot Admin2 实例状态监控详解Spring Boot Admin2 自定义JVM监控…

智慧环卫管理系统解决方案(垃圾分类)

1.1 垃圾分类管理子系统 1.1.1 公众参与互动平台 可为客户量身打造微信公众号&#xff0c;搭建互动交流的平台&#xff0c;更好的调动居民参与垃圾分类的热情。 1.1.1.1 分类指导 将目前城市的垃圾处理情况、垃圾分类现状、分类的意义&#xff0c;以数据来说明垃圾分类的…

MyBatis 源码解读 一讲到底

序言 前面大概的介绍了一下mybatis的一些东西&#xff0c;那么现在我们来解析一下Mybatis的源码&#xff0c;就从demo开始 Testpublic void TestExample() throws IOException {String resource "mybatis-config.xml";InputStream inputStream Resources.getResou…

人才资源开发杂志人才资源开发杂志社人才资源开发编辑部2022年第21期目录

开卷有益《人才资源开发》投稿&#xff1a;cnqikantg126.com 年轻干部要走好成长成才之路 赖宁; 1 特别关注 迎难而上 勇担重任 推进河南人事考试高质量发展 常万琦; 6-7 工作要闻 第五届中国河南招才引智创新发展大会开幕 归欣 ;张笑闻; 8 河南省12家企业和2个…

ceph 线程池分析

ceph 线程池 1. WHY 线程过多会带来调度开销&#xff0c;进而影响缓存局部性和整体性能。而线程池维护着多个线程&#xff0c;等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用&#xff0c;还能防止…

从ChargePoint到能链智电,充电服务商的价值创新

近日&#xff0c;吉林长春出租车雨雪之中排队换电艰难的视频引起热议。 新能源汽车充换电困难&#xff0c;一方面说明电池在寒冷天气下的性能有优化空间&#xff0c;另一方面也反映出国内新能源汽车配套基础设施仍然存在较大需求缺口。 充电基础设施建设对新能源汽车推广意义…

LabView 总结 持续追加

波形图和波形图表 波形图是同时将所有要显示的点显示出来&#xff0c;接收的数据是数组&#xff0c;当然要显示多条曲线&#xff0c; 波形图表在具有波形图的功能上还有逐点显示&#xff0c;接收数据是一个数值 条件结构 可以用于枚举、字符串、数值 当需要连接两个端点时&a…

[附源码]计算机毕业设计springboot二手书店设计论文

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 Ma…

聚苏丹红Ⅲ膜/磺化聚醚醚酮膜/ SiO2/Ag纤维复合材料修饰多巴胺的研究

小编在这里给大家整理了聚苏丹红Ⅲ膜/磺化聚醚醚酮膜/ SiO2/Ag纤维复合材料修饰多巴胺的研究&#xff0c;一起来看看吧&#xff01; 聚苏丹红Ⅲ膜修饰多巴胺的研究&#xff1a; 目的建立测定盐酸多巴胺注射液 含量的电化学分析新方法.方法采用循环伏安法研究盐酸多巴胺在膜修饰…

面试汇总-MySQL-杂项

目录 1、悲观锁和乐观锁 2、数据库关键字的执行顺序是什么&#xff1f; 3、SQL优化 3.1、如何进行sql优化&#xff1f; 3.2、常见的join算法 3.2.1、Hash Join 3.2.2、Merge Join 3.2.3、Nested Loop Join 3.3、Join前后表的数据量对查询性能有什么影响&#xff1f; …