信息学奥赛初赛天天练-42-CSP-J2020基础题-变量地址、编译器、逻辑运算、逻辑与运算、逻辑或运算、冒泡排序、递归应用

PDF文档公众号回复关键字:20240702

在这里插入图片描述

2020 CSP-J 选择题

单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正确选项)

1.在内存储器中每个存储单元都被赋予一个唯一的序号,称为( )

A.地址

B.序号

C.下标

D.编号

2.编译器的主要功能是( )

A.将源程序翻译成机器指令代码

B.将源程序重新组合

C.将低级语言翻译成高级语言

D.将一种高级语言翻译成另一种高级语言

3.设 x=true, y=true, z=false,以下逻辑运算表达式值为真的是( )

A.(y∨z)∧x∧z

B. x∧(z∨y) ∧z

C. (x∧y) ∧z

D.(x∧y)∨(z∨x)

4.现有一张分辨率为 2048×1024 像素的 32 位真彩色图像。请问要存储这张图像,需要多大的存储空间?( )

A.16MB

B.4MB

C.8MB

D.2MB

5.冒泡排序算法的伪代码如下:

对 n 个数用以上冒泡排序算法进行排序,最少需要比较多少次?( )

A.n^2

B.n-2

C.n-1

D.n

6.设A是介个实数的数组,考虑下面的递归算法:

请问算法XYZ的输出是什么?( )

A.A数组的平均

B.A数组的最小值

C.A数组的中值

D.A数组的最大值

2 相关知识点

1) 内存地址

变量

变量代表内存中具有特定属性的一个存储单元。它是一个地址和一个值的统称

内存地址

C语言地址,是指内存地址的概念。计算机内存中的各个存储单元都是有序的,按字节编码

每个字节有一个唯一的编码

变量地址

获取变量地址,使用&

示例

#include <iostream>
using namespace std;
int main(){int a=5;cout<<&a<<endl;float b=4.15;cout<<&b;		
}
/*
输出结果 
0x70fe1c
0x70fe18
*/

2) 编译器

编译器(Compiler)是一种计算机程序,其主要功能是将高级程序语言(如C、C++、Java等)编写的源代码转换为底层可执行的机器代码

3) 逻辑运算

逻辑与运算规则

进行逻辑与运算的两位都是逻辑1,则结果是1;否则,结果是0。

0 与 0 = 0
0 与 1 = 0
1 与 0 = 0
1 与 1 = 1

符号

and

示例

逻辑或运算规则
进行逻辑或运算的两位都是逻辑0,则结果是0;否则,结果是1。

0 或 0 = 0
0 或 1 = 1
1 或 0 = 1
1 或 1 = 1

符号

or

示例

4) 图像存储

分辨率

分辨率是衡量显示系统对细节的分辨能力的指标,它决定了图像的清晰度和质量。分辨率越高,图像中的细节越丰富,存储的像素越多,但同时文件大小也会增加

每个像素需要一点存储空间,一般可以使用8位,16位,32位二进制表示

存储空间=像素个数*位数,单位为bit

计算机存储大多是Byte

1Byte=8bit

5) 递归

递归是一种解决问题的方法,它通过将问题分解为更小的子问题来解决。

一个递归函数会在其定义中直接或间接地调用自身

递归通常包括两个部分:基本情况(Base case)和递归步骤(Recursive step)。

基本情况是指当问题规模变得足够小时,可以直接得到解决方案的情况。

6) 冒泡排序

冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端

n个元素的冒泡排序,需要n趟完成,

每趟进行逐一两两比较,进行n-1次比较,把最大(最小)元素比较出来,交换到最后

3 思路分析

1.在内存储器中每个存储单元都被赋予一个唯一的序号,称为( A )

A.地址

B.序号

C.下标

D.编号

分析

C语言地址,是指内存地址的概念。计算机内存中的各个存储单元都是有序的,按字节编码

每个字节有一个唯一的编码,对应一个内存地址

2.编译器的主要功能是( A )

A.将源程序翻译成机器指令代码

B.将源程序重新组合

C.将低级语言翻译成高级语言

D.将一种高级语言翻译成另一种高级语言

分析

编译器(Compiler)是一种计算机程序,其主要功能是将高级程序语言(如C、C++、Java等)编写的源代码转换为底层可执行的机器代码

3.设 x=true, y=true, z=false,以下逻辑运算表达式值为真的是( D )

A.(y∨z)∧x∧z

B. x∧(z∨y) ∧z

C. (x∧y) ∧z

D.(x∧y)∨(z∨x)

分析

//∨按位或 ,∧按位与
x=true,y=true,z=false
A:
(y∨z)=(true∨false)=true
(y∨z)∧x=true∧true=true
(y∨z)∧x∧z=true∧false=false
B:
(z∨y) =false∨true=true
x∧(z∨y)=true∧true=true
x∧(z∨y)∧z=true∧false=false
C:
(x∧y)=(true∧true)=true
(x∧y) ∧z = true∧false=false
D:
(x∧y)=(true∧true)=true
(z∨x)=(false∨true)=true
(x∧y)∨(z∨x)=true∨true = true
所以选D

4.现有一张分辨率为 2048×1024 像素的 32 位真彩色图像。请问要存储这张图像,需要多大的存储空间?( )

A.16MB

B.4MB

C.8MB

D.2MB

分析

分辨率2048*1024像素,每个像素32位,总共需要
2048*1024*32位存储,由于需要单位为字节,因此把位转换为字节
2048*1024*32/8
=2048*1024*4
=1024*1024*4*2
=8MB

5.冒泡排序算法的伪代码如下:

对 n 个数用以上冒泡排序算法进行排序,最少需要比较多少次?( )

A.n^2

B.n-2

C.n-1

D.n

分析

伪代码,一般需要看结构,看主要部分
有代码可以看出,冒泡排序的基本思路,进行n趟排序,每趟两两比较,找出最大的
在一趟中循环为1~k,每次循环通过FLAG-1对k进行赋值,然后FLAG赋值为1,如果前面一轮FLAG值不变则后面一轮循环从1~1不进行循环
考虑一种情况,如果顺序本身就是从小到大排好序的
第1轮排序为1~n-1次,顺序不需要交换,FLAG为1不被改变,则后续while FLAG > 1不满足,退出循环
所以只进行了n-1次循环,所以选C

6.设A是介个实数的数组,考虑下面的递归算法:

请问算法XYZ的输出是什么?( B )

A.A数组的平均

B.A数组的最小值

C.A数组的中值

D.A数组的最大值

分析

递归
取A[n]和A[1]...A[n-1]中最小的,其实从大看这个问题不容易看出
从小范围往大范围看
XYZ(A[1,2]) 比较A[2]和A[1]大小,并返回最小的
XYZ(A[1..3]) 比较A[3]和A[1,2]最小temp,并返回A[3]和temp最小的
XYZ(A[1..4]) 比较A[4]和A[1..3]最小temp,并返回A[4]和temp最小的
XYZ(A[1..n]) 比较A[n]和A[1..n-1]最小temp,并返回A[n]和temp最小的
可以看出返回的是A数组中最小的那个数
所以选B

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

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

相关文章

VUE项目安全漏洞扫描和修复

npm audit 1、npm audit是npm 6 新增的一个命令,可以允许开发人员分析复杂的代码并查明特定的漏洞。 2、npm audit名称执行&#xff0c;需要包package.json和package-lock.json文件。它是通过分析 package-lock.json 文件&#xff0c;继而扫描我们的包分析是否包含漏洞的。 …

Polygon链的对接及使用

Polygon&#xff08;前身为Matic Network&#xff09;是一个基于以太坊的侧链&#xff0c;旨在解决以太坊网络拥堵和高昂 gas 费的问题。Polygon 使用侧链技术将交易从以太坊主网转移到自己的侧链上&#xff0c;从而提高交易速度和降低 gas 费。北京木奇移动技术有限公司&#…

Python语言接入关键词搜索商品api疑点解析

接入关键词搜索商品API通常需要以下步骤&#xff1a; 了解API文档&#xff1a;首先&#xff0c;你需要阅读API的文档&#xff0c;了解API的基本功能、请求方式&#xff08;GET、POST等&#xff09;、请求参数、返回数据格式等信息。 安装必要的库&#xff1a;根据API的要求&am…

使用Python绘制动态螺旋线:旋转动画效果

文章目录 引言准备工作前置条件 代码实现与解析导入必要的库初始化Pygame绘制螺旋线函数主循环 完整代码 引言 螺旋线是一个具有美学和数学魅力的图形。通过编程&#xff0c;我们可以轻松创建动态旋转的螺旋线动画。在这篇博客中&#xff0c;我们将使用Python和Pygame库来实现…

精准检测,守护安全:可燃气体报警器检测范围探讨

随着工业化进程的加快&#xff0c;易燃易爆气体的使用日益普遍&#xff0c;其安全隐患也愈发凸显。可燃气体报警器作为一种重要的安全监测设备&#xff0c;能够在气体泄漏时及时发出警报&#xff0c;预防火灾和爆炸事故的发生。 在这篇文章中&#xff0c;佰德将对可燃气体报警…

FPGA工程师有前途吗 ?FPGA崛起之路

全球 FPGA 市场规模犹如滚雪球般逐年扩大。 根据Gartner Group预测&#xff0c;2020-2026年全球FPGA市场规模从55.85亿美元增至96.9亿美元&#xff0c;年均复合增长率为9.6%。 众多国际知名科技企业&#xff0c;如赛灵思、Lattice等&#xff0c;纷纷加大在 FPGA 研发和应用方…

❤ Gitee平台的使用

Gitee平台的使用 文章目录 Gitee平台的使用一、Gitee的注册1、注册2、添加邮箱 二、仓库的创建 和 团队成员的添加1、单击右上角的 **&#xff0b;** 号 、创建仓库2、如下填写即可 三、仓库克隆到本地1、安装好git 和 小乌龟&#xff08;TortoiseGit&#xff09;2、打开仓库 复…

强化学习的数学原理:最优贝尔曼公式

大纲 贝尔曼最优公式是贝尔曼公式的一个特殊情况&#xff0c;但其也非常重要。 本节课很重要的两个概念和一个工具&#xff1a; 工具不用多说&#xff0c;就是贝尔曼最优公式&#xff0c;概念则是 optimal state value&#xff08;最优状态价值&#xff09; 和 optimal polic…

【博主推荐】HTML5实现简洁好看的个人简历网页模板源码

文章目录 1.设计来源1.1 主界面1.2 关于我界面1.3 工作经验界面1.4 学习教育界面1.5 个人技能界面1.6 专业特长界面1.7 朋友评价界面1.8 获奖情况界面1.9 联系我界面 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板&#xff0c;程序开发&#xff0c;在线开发&#xff0c…

2024 年江西省研究生数学建模竞赛题目 A题交通信号灯管理---完整文章分享(仅供学习)

问题&#xff1a; 交通信号灯是指挥车辆通行的重要标志&#xff0c;由红灯、绿灯、黄灯组成。红灯停、绿灯行&#xff0c;而黄灯则起到警示作用。交通信号灯分为机动车信号灯、非机动车信号灯、人行横道信号 灯、方向指示灯等。一般情况下&#xff0c;十字路口有东西向和南北向…

【深度学习】图生图img3img论文原理,SD EDIT

https://arxiv.org/abs/2108.01073 摘要 引导图像合成技术使普通用户能够以最小的努力创建和编辑逼真的图像。关键挑战在于平衡对用户输入&#xff08;例如&#xff0c;手绘的彩色笔画&#xff09;的忠实度和合成图像的真实感。现有的基于GAN的方法试图通过使用条件GAN或GAN反…

webpack源码深入--- webpack的编译主流程

webpack5的编译主流程 根据watch选项调用compiler.watch或者是compiler.run()方法 try {const { compiler, watch, watchOptions } create();if (watch) {compiler.watch(watchOptions, callback);} else {compiler.run((err, stats) > {compiler.close(err2 > {callb…

【最新】2024年全球汽车零部件供应商百强榜,15家中企上榜!

6月23日&#xff0c;《美国汽车新闻》&#xff08;Automotive News&#xff09;重磅发布了2024年全球汽车零部件供应商百强榜。来自中国的动力电池企业宁德时代挤进了前四&#xff0c;中国企业一共上榜15家&#xff0c;较去年多了两家。国轩高科和三花零件为新进榜单的中企。 …

WPF自定义控件,实现含有箭头的文本或内容控件

文章目录 背景效果预览方案设计分析基本布局添加控件自定义属性添加属性值监听获取点数据 全部代码HorizontalLineContent.xamlHorizontalLineContent.xaml.csDirectionAlignment.csContentDirectionAlignment.cs 使用方法 背景 因为项目开发需要&#xff0c;要在WPF上绘制TCP…

【neo4j图数据库】入门实践篇

探索数据之间的奥秘&#xff1a;Neo4j图数据库引领新纪元 在数字化浪潮汹涌的今天&#xff0c;数据已成为企业最宝贵的资产之一。然而&#xff0c;随着数据量的爆炸性增长和数据关系的日益复杂&#xff0c;传统的关系型数据库在处理诸如社交网络、推荐系统、生物信息学等高度互…

代码随想录算法训练营第四十一天| 322. 零钱兑换、279.完全平方数、139.单词拆分

322. 零钱兑换 题目链接&#xff1a;322. 零钱兑换 文档讲解&#xff1a;代码随想录 状态&#xff1a;能想到凑足总额为j - coins[i]的最少个数为dp[j - coins[i]]&#xff0c;但没想到加上一个钱币coins[i]即dp[j - coins[i]] 1就是dp[j]&#xff08;考虑coins[i]&#xff09…

IDEA 好用的插件,必备的插件

1. GitToolBox 菜单栏显示git分支信息 2.MyBatisx 快速定位找到sql的xml文件 3.RestfulToolkit-fix 快速定位接口的插件 默认快捷键: CtrlAltN 4.EasyCamelQSM 字符串转驼峰 默认快捷键: Ctrl Alt Q 5.Maven Helper 检查maven冲突&#xff0c;图形化展示maven依赖的插…

Conan安装与C++第三方环境配置保姆级图文教程(附速查字典)

目录 1 什么是Conan&#xff1f;2 Conan安装与配置3 Conan的常见操作3.1 搜索指定包3.2 安装指定包3.3 本地包管理3.4 查看项目依赖 4 Conan构建项目案例 1 什么是Conan&#xff1f; Conan是一个开源的C/C包管理器&#xff0c;用于管理和构建C/C项目所需的依赖库。传统上&…

【启明智显分享】2.8寸触摸串口屏SC05 Plus应用于智能血压计

2.8寸SC05 Plus串口触摸屏&#xff0c;带WIFI/蓝牙 我国高血压流行病调查显示&#xff0c;成人高血压患病率为27.9&#xff05;、知晓率为46.9&#xff05;、治疗率为40.7&#xff05;、控制率为15.3&#xff05;。由此可见高血压的患病率高&#xff0c;但知晓率和治疗率低&…

【微信小程序开发实战项目】——如何制作一个属于自己的花店微信小程序(1)

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-曼亿点 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 曼亿点 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a…