信息学奥赛初赛天天练-71-NOIP2016普及组-基础题2-进制转换、二进制转八进制、八进制转二进制、二叉树数组存储、寻址空间

本文主要是介绍信息学奥赛初赛天天练-71-NOIP2016普及组-基础题2-进制转换、二进制转八进制、八进制转二进制、二叉树数组存储、寻址空间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

NOIP 2016 普及组 基础题2

4 以下不是 CPU 生产厂商的是( )
A Intel
B AMD
C Microsoft
D IBM

8 与二进制小数 0.1相等的八进制数是( )
A 0.8
B 0.4
C 0.2
D 0.1

9 以下是 32 位机器和 64 位机器的区别是( )
A 显示器不同
B 硬盘大小不同
C 寻址空间不同
D 输入法不同

11一棵二叉树如右图所示,若采用顺序存储结构,即用一 维数组元素存储该二叉树中的结点(根结点的下标为 1, 若某结点的下标为 i,则其左孩子位于下标 2i 处、右孩 子位于下标 (2i+1) 处,则图中所有结点的最大下标为( )


A 6
B 10
C 12
D 15

12 若有如下程序段,其中 s,a,b,c均已定义为整型变量,且 a,c均已赋值 (c大于 0)

s = a;
for (b = 1;b <= c; b++ )s = s + 1;

则与上述程序段修改 s 值的功能等价的赋值语句是( )

A s = a + b;
B s = a + c;
C s = s + c;
D s = b + c;

2 相关知识点

1) 进制转换

二进制转八进制

二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位

(1010 0100)B = (010 001 100 )B=(244)O

二进制带小数转八进制

(0010.0110)B = (000 010.011 000)B=(2.3)O

八进制转二进制

二进制转换成八进制的反向操作

(244)O=(010 100 100 )B=(1010 0100)B

八进制带小数转二进制

(24.4)O=(010 100. 100 )B=(10100.1)B

2) 二叉树数组存储

完美二叉树,我们将所有节点按照层序遍历的顺序存储在一个数组中,则每个节点都对应唯一的数组索引

若节点的索引为 𝑖 ,则该节点的左子节点索引为 2𝑖 + 1 ,右子节点索引为 2𝑖 + 2

任意二叉树数组存储

任意二叉树有些节点是不满的,因此把不满的二叉树对应节点空出来,或者使用特殊数字表示,比如使用-1表示

3) 寻址空间

寻址空间(Addressing Space)是指在计算机系统中可以被处理器(CPU)访问的内存地址范围。它决定了计算机可以访问多少内存以及如何访问这些内存。寻址空间的大小取决于处理器的地址总线宽度

物理寻址空间:这是指实际存在的物理内存(RAM)的大小。例如,如果一个计算机有1GB的物理内存,那么它的物理寻址空间就是1GB

例如,一个32位的处理器可以寻址2^32 个不同的内存地址,即4GB的寻址空间。而一个64位的处理器理论上可以寻址2^64个不同的内存地址,即16EB(Exabytes)的寻址空间。然而,实际的可用寻址空间可能受到操作系统和硬件限制的影响

3 思路分析

4 以下不是 CPU 生产厂商的是( C )
A Intel
B AMD
C Microsoft
D IBM

分析

A Intel:Intel 是全球最大的半导体生产厂商之一,主要生产 CPU(中央处理器),如酷睿系列,Intel 是一个 CPU 生产厂商
B AMD:AMD(Advanced Micro Devices)是一家美国的跨国半导体公司,主要生产 CPU 和 GPU(图形处理器),AMD是一个CPU生产厂商
C Microsoft:Microsoft 是一家美国的跨国科技公司,主要业务包括操作系统、办公软件、云计算服务等。虽然 Microsoft 生产了一些硬件产品,如 Surface 系列,但它并不生产 CPU,Microsoft 不是一个 CPU 生产厂商。
D IBM:IBM(International Business Machines Corporation)是一家美国的跨国科技公司,业务范围广泛,包括硬件、软件、云计算服务等。IBM 曾经生产过 CPU,如 PowerPC 系列,IBM 是一个 CPU 生产厂商。
所以选 C

8 与二进制小数 0.1相等的八进制数是( B )
A 0.8
B 0.4
C 0.2
D 0.1

分析

二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位
0.1
左边取3为000,右边去3为100,对应8进制4
所以为0.4

9 以下是 32 位机器和 64 位机器的区别是( C )
A 显示器不同
B 硬盘大小不同
C 寻址空间不同
D 输入法不同

分析

32 位机器和 64 位机器的主要区别在于它们的寻址空间和数据处理能力
A 不正确,因为显示器的类型和尺寸与计算机的位数无关,而是取决于显卡和显示器本身的规格。
B 不正确,硬盘的大小与计算机的位数无关,而是取决于硬盘本身的容量。
C 正确。32 位机器的最大寻址空间为 2^32 字节,约为 4GB;而 64 位机器的最大寻址空间为 2^64 字节,远远大于 4GB。这意味着 64 位机器可以处理更大的内存空间,从而提高性能。
D 不正确,输入法的类型和功能与计算机的位数无关,而是取决于操作系统和输入法软件本身
所以选C

11一棵二叉树如右图所示,若采用顺序存储结构,即用一 维数组元素存储该二叉树中的结点(根结点的下标为 1, 若某结点的下标为 i,则其左孩子位于下标 2i 处、右孩 子位于下标 (2i+1) 处,则图中所有结点的最大下标为( D )

A 6
B 10
C 12
D 15

分析

如果下图所示
1的下标为1
2的下标为2*1+1=3
3的下标为2*3+1=7
4的下标为2*7+1=15

12 若有如下程序段,其中 s,a,b,c均已定义为整型变量,且 a,c均已赋值 (c大于 0)

s = a;
for (b = 1;b <= c; b++ )s = s + 1;

则与上述程序段修改 s 值的功能等价的赋值语句是( B )

A s = a + b;
B s = a + c;
C s = s + c;
D s = b + c;

分析

s=a ,s一开始赋值为a
如下循环从1开始一直累加到c,每次s加1
for (b = 1;b <= c; b++ )s = s + 1;
循环结束总共加了c次1,所以s累加了c
所以s=a+c

这篇关于信息学奥赛初赛天天练-71-NOIP2016普及组-基础题2-进制转换、二进制转八进制、八进制转二进制、二叉树数组存储、寻址空间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1094102

相关文章

Java数组初始化的五种方式

《Java数组初始化的五种方式》数组是Java中最基础且常用的数据结构之一,其初始化方式多样且各具特点,本文详细讲解Java数组初始化的五种方式,分析其适用场景、优劣势对比及注意事项,帮助避免常见陷阱... 目录1. 静态初始化:简洁但固定代码示例核心特点适用场景注意事项2. 动态初始化:灵活但需手动管理代

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指

C++中初始化二维数组的几种常见方法

《C++中初始化二维数组的几种常见方法》本文详细介绍了在C++中初始化二维数组的不同方式,包括静态初始化、循环、全部为零、部分初始化、std::array和std::vector,以及std::vec... 目录1. 静态初始化2. 使用循环初始化3. 全部初始化为零4. 部分初始化5. 使用 std::a

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

《Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码》:本文主要介绍Java中日期时间转换的多种方法,包括将Date转换为LocalD... 目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTim

mysql的基础语句和外键查询及其语句详解(推荐)

《mysql的基础语句和外键查询及其语句详解(推荐)》:本文主要介绍mysql的基础语句和外键查询及其语句详解(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录一、mysql 基础语句1. 数据库操作 创建数据库2. 表操作 创建表3. CRUD 操作二、外键

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字