乐于分享
好东西不私藏

2026CSP初赛高频模拟试题|C/C++基础+计算机常识一网打尽

2026CSP初赛高频模拟试题|C/C++基础+计算机常识一网打尽

信息学竞赛路上,选择题是绕不开的基本功。本文从CSP‑S提高组模拟题中精选16道高频单选题,涵盖C/C++程序基础与计算机基础知识两大板块,每道题附详细解析,适合考前自查与日常巩固。


一、C/C++程序基础(11题)

1. 字符与整数的本质

题目:若有定义:char c = 'A'; int i = 65;,则下列叙述正确的是( )A. c和i中存储的都是字符'A'B. c中实际存储的是整数65,i中存储的是字符'A'C. c和i中存储的都是整数65D. c中存储的是字符'A', i中存储的是整数65,但内存中均以二进制补码形式表示

答案:C解析:C语言中char类型存储的是ASCII码整数值,'A'的ASCII码为65。因此ci在内存中存储的都是整数65。注意:字符常量本质是整型,并非真正存储字符图形。


2. 浮点数四舍五入保留三位小数

题目:设double型变量num已赋值,若要实现保留小数点后3位且四舍五入,正确语句是( )A. num = (int)(num * 1000 + 0.5) / 1000.0;B. num = (num * 1000 + 0.5) / 1000;C. num = (int)num * 1000 + 0.5 / 1000.0;D. num = (num + 0.5) * 1000 / 1000.0;

答案:A解析:经典写法——放大1000倍,加0.5后强制取整,再除以1000.0还原。B选项未取整;C选项只对原整数部分操作;D选项逻辑错误。


3. 表达式求值(运算符优先级与类型转换)

题目:已知定义:int b = 9; double m = 3.6, n = 5.4; 表达式 (int)m + b % 4 * (int)(m + n) / 2.0 的值为( )A. 7.500000 B. 8.000000 C. 9.000000 D. 10.000000

答案:A解析

  • (int)m = 3

  • b % 4 = 1

  • (int)(m + n) = (int)(9.0) = 9

  • 乘除从左到右:1 * 9 / 2.0 = 4.5

  • 最终:3 + 4.5 = 7.5


4. 解释器的工作特点

题目:解释器的主要工作特点是( )A. 逐行翻译并执行源程序,不生成目标文件B. 一次性编译全部代码生成可执行文件C. 将低级语言转换为高级语言D. 优化程序代码结构

答案:A解析:解释器边翻译边执行,不生成独立的可执行文件;B描述的是编译器;C、D概念错误。


5. 指针的基本概念

题目:以下关于C++指针的叙述中,错误的是( )A. 指针变量可以指向同类型的变量B. 可以通过delete释放new分配的内存C. 指针的值是一个内存地址D. 两个任意类型的指针可以直接相互赋值而不需要强制类型转换

答案:D解析:不同类型指针不能直接赋值,需强制类型转换。A、B、C均正确。


6. Dijkstra算法时间复杂度(邻接矩阵)

题目:求单源最短路径的Dijkstra算法,在采用邻接矩阵存储图且未使用优先队列优化的情况下,其时间复杂度为( )

A.O(n) B.O(n^2) C.O(m\log n) D.O(n^3)

答案:B

解析:邻接矩阵、无堆优化 Dijkstra:两层循环,O(n^2)。用优先队列 + 邻接表才是 O(m\log n).


7. Linux文件复制命令

题目:在Linux系统中,用于将文件从一处复制到另一处的命令是( )A. mv B. cp C. rm D. touch

答案:B解析cp复制;mv移动/重命名;rm删除;touch创建空文件或更新时间戳。


8. 补码表示:-1的十六进制

题目:在32位有符号整数补码表示中,-1的十六进制表示是( )A. 0x00000001 B. 0x7FFFFFFF C. 0xFFFFFFFF D. 0x80000001

答案:C解析:-1的补码为全1,即32位全1,对应0xFFFFFFFF。A为1,B为最大正数,D为-2147483647。


9. 内存地址范围计算

题目:内存按字节编址,一块内存地址从0x2000到0x5FFF,一共有多少字节( )A. 0x3FFF B. 0x2000 C. 0x4000 D. 0x5000

答案:C解析:字节数 = 结束地址 - 起始地址 + 1 = 0x5FFF - 0x2000 + 1 = 0x4000


10. Cache块数量计算

题目:某计算机按字节编址,Cache块大小为64字节,主存地址按字节给出。若某变量起始地址为0x1000,大小为200字节,则它占用的Cache块数量为( )A. 2 B. 3 C. 4 D. 5

答案:B

解析:Cache 块 64B。200 字节。 200 / 64 =3.125,不足一块也要占一块,所以需要3 块。


11. 未压缩视频存储空间估算

题目:一段10分钟未压缩视频,帧率30fps,每帧为1920×1080像素,24位真彩色,其存储空间约为( )A. 50GB B. 100GB C. 150GB D. 200GB

答案:C解析:时间:10min = 600s;总帧数 = 600 X 30 =1800 帧; 每帧字节:1920 x 1080 x 24 /8 字节; 总字节:18000 x 1920 x 1080 x 3 换算 GB1GB =1024^3 )≈140GB,约 150GB,选 C。


二、计算机基础知识(5题)

1. 进制转换与比较大小

题目:下列四个数中,最小的是( )

A.(2E)_16 B.(57)_8 C.(48)_10 D.(101101)_2

答案:D  把全部转为十进制:


2. 信息论奠基人

题目:信息论的奠基人是( )A. 图灵 B. 冯·诺依曼 C. 牛顿 D. 香农

答案:D解析:香农创立信息论;图灵提出图灵机;冯·诺依曼提出计算机体系结构;牛顿为物理学家。


3. 未压缩音频存储空间计算

题目:一段音频采样频率为44.1kHz,量化位数为16位,双声道,录制10分钟,不压缩存储需要的字节数约为( )A. 50MB B. 100MB C. 150MB D. 200MB

答案:B解析:公式:字节数 = 采样率 × 量化位数/8 × 声道数 × 秒数

44100 × (16/8) × 2 × (10×60) 字节≈101MB,选 B。


4. 香农定理解决的问题

题目:1949年,香农提出了著名的“香农定理”,它主要解决了( )问题A. 图灵机可计算性B. 最短路径存在性C. 有噪信道的最大可靠传输速率D. 布尔代数完备性

答案:C解析:香农定理给出了有噪信道中无差错传输的最大信息速率(信道容量)。


5. 哈夫曼编码的压缩类型

题目:哈夫曼编码是一种( )压缩技术A. 无损 B. 有损 C. 对称 D. 不可逆

答案:A解析:哈夫曼编码属于无损压缩,解码后可完全还原原始数据。有损压缩如JPEG、MP3。


结语

以上16 道题覆盖了字符存储、类型转换、运算优先级、内存地址、Cache、音视频存储、进制转换、信息论等高频考点,是CSP‑S初赛和复赛前选择题训练的优质素材。建议同学们不仅记住答案,更要理解每一步的推理过程,真正做到“知其然,更知其所以然”。

刷题不贪多,搞懂一类是一类。 如果你觉得有帮助,欢迎点赞、在看、转发给更多备战CSP的小伙伴!