1001 - NOIP 2007 普及组初赛试题(下)
以下题目均来自于洛谷,另外像“NOIP不推荐使用什么语言环境”这类随时间变化而标准不断变化的题目不再进行展示与讲解
在C语言中,判断a等于0或b等于0或c等于0的正确的条件表达式是( )。
A. !((a!=0)||(b!=0)||(c!=0))
B. !((a!=0)&&(b!=0)&&(c!=0))
C. !(a == 0&&b==0)||(c!=0)
D. (a=0)&&(b=0)&&(c=0)
C语言中“等于”用“ == ”来表示,“不等于”用“!=”来表示,“或”用“||”来表示,“与”用“&&”来表示,“非”用“!”来表示。
而在四个选项中,只有B选项表达出了题目中的意思。
正确答案: B
地面上有标号为A、B、C的三根柱,在A柱上放有10个直径相同中间有孔的圆盘,从上到下依次编号为1,2,3……,将A柱上的部分盘子经过B柱移入C柱,也可以在B柱上暂存。如果B柱上的操作记录为“进、进、出、进、进、出、出、进、进、出、进、出、出”。那么,在C柱上,从下到上的编号为( )。
A. 2 4 3 6 5 7
B. 2 4 1 2 5 7
C. 2 4 3 1 7 6
D. 2 4 3 6 7 5
正确答案: D
与十进制数1770对应的八进制数是( )。
A. 3350
B. 3351
C. 3352
D. 3540
八进制是由二进制衍生而来的,因此可以采用与十进制转换为二进制相类似的方法。
除8取余法,即每次将整数部分除以8,余数为该位权上的数,而商继续除以8,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数起,一直到最前面的一个余数。(仅适用于整数)
正确答案: C
设A=B=True,C=D=False,一下逻辑运算表达式值为假的有( )。
A. (﹁A∧B)∨(C∧D∨A)
B. ﹁(((A∧B)∨C)∧D)
C. A∧(B∨C∨D)∨D
D. (A∧(D∨C))∧B
与,或,非,同或,异或
与、或、非、同或和异或是逻辑运算的符号,在NOIP初赛知识中很常见:
符号表示
与:∧
或:∨
非:┐
同或:⊙
异或:⊕
与运算:
0∧0=0 ;0∧1=0 ;1∧0=0 ;1∧1=1 即所有参数都为真,才返回真;
或运算:
0∨0=0 ;0∨1=1 *1∨0=1 ;1∨1=1 即只要有一个参数为真,就返回真;
非运算:
┐0=1 ;┐1=0 即参数为真则为假,否则为真;
同或运算:
1⊙1=1 ;1⊙0=0 ;0⊙1=0 ;0⊙0=1 即两参数为一样时返回1,否则返回0
异或运算:
0⊕1=1; 0⊕0=0 ;1⊕1=0 ;1⊕0=1 即两参数不为一样返回1,否则返回0
正确答案: D
(2070)₁₆+(34)₈的结果是( )。
A. (8332)₁₀
B. (208A)₁₆
C. (100000000110)₂
D. (20212)₈
十进制转换为十六进制,请参见文章《十进制的数如何转换为十六进制》
正确答案: A