在 C 语言中,表达式 23|2^5 的值是( )
23
1
18
32
24
在以下各项中,( )不是 CPU 的组成部分。
控制器
运算器
寄存器
主板
算术逻辑单元 (ALU)
在 C 语言中,判断 a 等于 0 或b 等于 0 或c 等于 0 的正确的条件表达式是( )
!((a!=0)||(b!=0)||(c!=0))
!((a!=0)&&(b!=0)&&(c!=0))
!(a==0&&b==0)||(c!=0)
(a=0)&&(b=0)&&(c=0)
!((a=0)||(b=0)||(c=0))
在关系数据库中,存放在数据库中的数据的逻辑结构以( )为主。
二叉树
多叉树
哈希表
B+ 树
二维表
ASCII 码的含义是( )。
二─十进制转换码
美国信息交换标准代码
数字的二进制编码
计算机可处理字符的唯一编码
常用字符的二进制编码
在下列各项中,只有( )不是计算机存储容量的常用单位。
Byte
KB
MB
UB
TB
地面上有标号为 A、B、C 的3 根细柱,在 A 柱上放有 10 个直径相同中间有孔的圆盘,从上到下依 次编号为 1,2,3,…… ,将 A 柱上的部分盘子经过 B 柱移入 C 柱,也可以在 B 柱上暂存。如果 B 柱 上的操作记录为: “进,进,出,进,进,出,出,进,进,出,进,出,出 ”。那么,在 C 柱上,从下 到上的盘子的编号为( )。
243657
241257
243176
243675
214375
欧拉图 G 是指可以构成一个闭回路的图,且图 G 的每一条边恰好在这个闭回路上出现一次(即一笔 画成)。在以下各个描述中,不一定是欧拉图的是( )。
图G中没有度为奇数的顶点
包含欧拉环游的图(欧拉环游是指通过图中每边恰好一次的闭路径)
包含欧拉闭迹的图(欧拉迹是指通过图中每边恰好一次的路径)
存在一条回路,通过每个顶点恰好一次
本身为闭迹的图
一个无法靠自身的控制终止的循环称为 “死循环 ”,例如,在 C 语言程序中,语句 “while(1) printf( “* ”); ”就是一个死循环,运行时它将无休止地打印 * 号。下面关于死循环的说法中,只有( ) 是正确的。
不存在一种算法,对任何一个程序及相应的输入数据,都可以判断是否会出现死循环,因而,任何编译系统都不做死循环检验
有些编译系统可以检测出死循环
死循环属于语法错误,既然编译系统能检查各种语法错误,当然也应该能检查出死循环
死循环与多进程中出现的 “死锁 ”差不多,而死锁是可以检测的,因而,死循环也是可以检测的
对于死循环,只能等到发生时做现场处理,没有什么更积极的手段
与十进制数 17.5625 对应的 8 进制数是( )。
21.5625
21.44
21.73
21.731
前4个答案都不对
命题 “P→Q”可读做 P蕴涵 Q,其中 P、Q 是两个独立的命题。只有当命题 P成立而命题 Q不成立时, 命题 “P→ Q”的值为 false ,其他情况均为 true 。与命题 “P→Q”等价的逻辑关系式是( )。
¬P∨ Q
P ∧Q
¬(P ∨Q)
¬ ( ¬Q∧P)
(2070) 16 +(34) 8的结果是( )。
(8332) 10
(208C) 16
(100000000110) 2
(20214) 8
设A=B=true ,C=D=false ,以下逻辑运算表达式值为真的有( )。
( ¬A∧B) ∨ (C ∧D∨A)
¬(((A ∧B) ∨ C) ∧D)
A ∧(B ∨C∨D) ∨D
(A ∧(D ∨C)) ∧B
已知 7 个结点的二叉树的先根遍历是 1245637 (数字为结点的编号,以下同),后根遍历 是4652731 ,则该二叉树的可能的中根遍历是( )
4265173
4256137
4231547
4256173
冗余数据是指可以由其他数据导出的数据,例如,数据库中已存放了学生的数学、语文和英语的三 科成绩,如果还存放三科成绩的总分,则总分就可以看作冗余数据。冗余数据往往会造成数据的不一致, 例如,上面 4 个数据如果都是输入的,由于操作错误使总分不等于三科成绩之和,就会产生矛盾。下面 关于冗余数据的说法中,正确的是( )。
应该在数据库中消除一切冗余数据
与用高级语言编写的数据处理系统相比,用关系数据库编写的系统更容易消除冗余数据
为了提高查询效率,在数据库中可以适当保留一些冗余数据,但更新时要做相容性检验
做相容性检验会降低效率,可以不理睬数据库中的冗余数据
在下列各软件中,属于 NOIP 竞赛(复赛)推荐使用的语言环境有( )。
gcc
g++
TurboC
freepascal
以下断电之后仍能保存数据的有( )。
硬盘
ROM
显存
RAM
在下列关于计算机语言的说法中,正确的有( )。
高级语言比汇编语言更高级,是因为它的程序的运行效率更高
随着 Pascal 、C等高级语言的出现,机器语言和汇编语言已经退出了历史舞台
高级语言程序比汇编语言程序更容易从一种计算机移植到另一种计算机上
C 是一种面向过程的高级计算机语言
在下列关于算法复杂性的说法中,正确的有( )。
算法的时间复杂度,是指它在某台计算机上具体实现时的运行时间
算法的时间复杂度,是指对于该算法的一种或几种主要的运算,运算的次数与问题的规模之间的函数关系
一个问题如果是 NPC类的,就意味着在解决该问题时,不存在一个具有多项式时间复杂度的算法。但这一点还没有得到理论上的证实,也没有被否定
一个问题如果是 NP类的,与 C有相同的结论
近20 年来,许多计算机专家都大力推崇递归算法,认为它是解决较复杂问题的强有力的工具。在下 列关于递归算法的说法中,正确的是( )。
在1977年前后形成标准的计算机高级语言 “FORTRAN77 ”禁止在程序使用递归,原因之一是该方法可能会占用更多的内存空间
和非递归算法相比,解决同一个问题,递归算法一般运行得更快一些
对于较复杂的问题,用递归方式编程往往比非递归方式更容易一些
对于已经定义好的标准数学函数 sin(x) ,应用程序中的语句 “y=sin(sin(x)); ”就是一种递归调用
给定 n 个有标号的球,标号依次为 1,2,…,n。将这 n 个球放入 r 个相同的盒子里,不允许 有空盒,其不同放置方法的总数记为 S(n,r) 。例如, S(4,2)=7 ,这 7 种不同的放置方法依次为 {(1),(234)},{(2),(134)},{(3),(124)},{(4),(123)},{(12),(34)},{(13),(24)}, {(14),(23)} 。当 n=7,r=4 时, S(7,4)=_____________
N 个人在操场里围成一圈,将这 N 个人按顺时针方向从 1 到N 编号,然后,从第一个人起,每 隔一个人让下一个人离开操场,显然,第一轮过后,具有偶数编号的人都离开了操场。依次做下去,直 到 操 场 只 剩 下 一 个 人 , 记 这 个 人 的 编 号 为J(N) , 例 如 ,J(5)=3 ,J(10)=5 , 等 等 。 则 J(400)=______________ 。
(提示:对 N=2 m+r 进行分析,其中 0≤r<2 m )。
(连续邮资问题)某国发行了 n 种不同面值的邮票,并规定每封信最多允许贴 m 张邮票,在这 些约束下,为了能贴出 {1 , 2,3, …,maxvalue} 连续整数集合的所有邮资,并使 maxvalue 的值最 大,应该如何设计各邮票的面值?例如,当 n=5 、m=4 时,面值设计为 {1 , 3,11 ,15 ,32} ,可使 maxvalue 达到最大值 70 (或者说,用这些面值的 1 至4 张邮票可以表示不超过 70 的所有邮资,但无 法表示邮资 71 。而用其他面值的 1 至4 张邮票如果可以表示不超过 k 的所有邮资,必有 k ≤70 )。
下面是用递归回溯求解连续邮资问题的程序。数组 x[1:n] 表示 n 种不同的邮票面值,并约定各元 素按下标是严格递增的。数组 bestx[1:n] 存放使 maxvalue 达到最大值的邮票面值(最优解), 数组 y[maxl] 用于记录当前已选定的邮票面值 x[1:i] 能贴出的各种邮资所需的最少邮票张数。请将程 序补充完整。
(格雷码, GrayCode ) 格雷码是对十进制数的一种二进制编码。编码顺序与相应的十进制数的大小不一致。其特点是:对于 两个相邻的十进制数,对应的两个格雷码只有一个二进制位不同。另外,最大数与最小数之间也仅有一个 二进制位不同,以 4 位二进制数为例,编码如下:
如果把每个二进制的位看作一个开关,则将一个数变为相邻的另一个数,只须改动一个开关。因此, 格雷码广泛用于信号处理、数 - 模转换等领域。
下面程序的任务是:由键盘输入二进制数的位数 n(n<16) ,再输入一个十进制数 m(0 ≤m<2n) ,然 后输出对应于 m 的格雷码(共 n 位,用数组 gr[] 存放)。
为了将程序补充完整,你必须认真分析上表的规律,特别是对格雷码固定的某一位,从哪个十进制数 起,由 0 变为 1,或由 1 变为 0。