|
一、单选题(共 20 道试题,共 60 分。)V 1. 以下程序: main() { int i , sum; for(i=1;i<6;i++) sum+=i; printf(“%d\n”,sum); } 执行程序后sum的值是(): I* E. z4 ?" p8 o0 u) @6 e
A. 15
; [1 M- S& v/ ^; G6 oB. 14
% ^# c# r- H! {9 mC. 不确定
" G+ F& n7 M3 \1 y! G! m1 O4 qD. 08 z. V& B2 x3 |" ?
满分:3 分 R4 n( V5 V+ I
2. 若已包含头文件<stdio.h>且有说明char s1[5],s2[7];要给s1,s2赋值,下列语句中正确的是()
) e D4 p+ B# s+ g# j2 ~9 d2 ?1 T3 vA. s1=getchar(); s2=getchar();; t! [2 @0 e+ J9 M7 F
B. scanf(“%s%s”,s1,s2);! |% N( u- G4 u: O# _3 d! ]
C. scanf(“%c%c”,s1,s2);2 W! \- ~3 [( m6 S5 O# B
D. gets(s1);s2=s1;, y8 J! y0 H/ q* ^4 p
满分:3 分
/ m$ X6 n7 l& M1 g4 F' a6 l( z# H; V3. 以下程序:main( ) { int i=010,j=10; printf("%d,%d\n",i,j); } 的输出结果为(). r8 |) ` H' c7 h# V6 S
A. 11,9/ O; O- A5 W! x* A$ d) g
B. 9,10$ G f d+ P1 a6 C1 I8 F
C. 8,10
2 R: D$ m: y4 o& N& S' \D. 9,9
: @( T) i/ U8 x# G 满分:3 分' W: k8 [; ?) G1 |/ y$ F [
4. 在C程序中有如下语句:char *func(int x,int y); 它是()' W9 q5 {5 {/ G( m( K$ Z3 `( ^7 t
A. 对函数func的定义。+ d5 G6 C* q) p0 s) W: h* m
B. 对函数func的调用。1 v2 Y) ]$ O5 B
C. 对函数func的原型说明。
7 Z3 ~6 p! y( u" lD. 不合法的。
/ j; ^& l4 U1 u/ X 满分:3 分5 E) P: S1 L. U, H# z
5. 下列程序段: char s1[10]=”12345”,s2[10]=”abc”,s3[]=”67”; strcpy(s1,s2); strcat(s1,s3); puts(s1); 的运行结果是()
7 V3 ]7 N+ N3 _' @' p0 a6 fA. abc673 V$ t U: k' G5 s3 L1 F
B. abc4567
9 y% |4 d8 \) L5 Z. F1 VC. abc 567- V$ x6 N4 ^" R$ u
D. abc567 o, ]# b2 ], l' }, _) ]( [
满分:3 分, U/ K& F' r v& _
6. 设a=-3;执行(a>0)?a:-a;后,a的值为()
: J: A }' D M6 \A. 30 u9 X" K. ], H$ k1 g8 }$ j5 H% d
B. 1! {: e( ^9 A C( ~
C. 05 [+ {7 A$ q& c1 @' Y
D. -3/ g8 e: ]& _' j7 O, F5 [
满分:3 分$ D0 M( `, N( }- B; W
7. 下列程序:main( ) { int a=7,b=5; printf("%d\n",b=b/a); } 的输出结果是()
; i4 O" ]: P; h. L& B4 KA. 5; S( p' P2 d- C$ F" {4 l
B. 1# h5 x& L" f+ x- a k" Y6 [! j
C. 05 R' [9 O% ]: y
D. 不确定值9 R! H- Y5 p3 W$ Z3 m
满分:3 分( F$ v9 c% j6 Y3 j
8. 数组名作为实参数传递给函数时,数组名被处理为()5 L, m, S7 P' R$ Q4 m
A. 该数组的长度7 V# t+ x/ Q0 ` k/ `
B. 该数组的元素个数+ L, `$ j; a6 X1 w
C. 该数组的首地址
! x+ A' j' t) _- [D. 该数组中各元素的值- y- _2 Q8 _) d! z7 \, C, w8 G
满分:3 分
- T5 `- W8 |, x D! y8 f9. 已定义c为字符型变量,则下列语句中正确的是 ()
. B F0 I: H8 I2 x+ q2 NA. c=‘97’; o' H% D5 x3 P) }
B. c="97";
" R) }5 A- H( |3 } GC. c=97;, Q5 p Y- C# V2 c/ c. l) ?
D.
: M+ [+ U' A0 f- n- Q. ^E. c="a";+ N* Z9 n. A& i" @
满分:3 分- N/ l% J) |7 }/ ?; o' d7 F
10. 用C语言编写的代码程序()
- M5 C& L! p: r" DA. 可立即执行& i8 |) f8 j: L0 x2 {) z! F
B. 是一个源程序
8 }* e, b: v s1 P! g/ }! y8 QC. 经过编译即可执行
. O; s: \2 A$ J1 j7 e4 GD. 经过编译解释才能执行$ z0 {0 t$ ?# M3 M
满分:3 分
4 z/ w% N o3 x6 q( c" i% {; v2 l11. 当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是(). L. P4 a4 v! a3 j" C
A. k%26 G; ^; Z, ^: X$ X8 U1 V+ ^
B. k%2==1+ P2 U# C# p. u6 i
C. (k%2)!=0
" h$ _3 @9 [* D6 F' iD. !k%2==1
% T& D# X9 J( @5 z1 v) N 满分:3 分
; ], K$ b% }$ Q, ~' O @2 m12. 能正确表示a和b同时为正或同时为负的逻辑表达式是()
, w6 k! A( Q. M) e2 m- q# |A. (a>=0||b>=0)&&(a<0 ||b<0 z2 }( ]. {0 H6 Y
B. (a>=0 && b>=0)&&(a<0 && b<0)- M$ J9 C: }' m( H7 D2 |
C. (a+b>0) &&(a+b<=0)
9 U8 ^; k; C4 iD. a*b>0
. _5 m0 c* J$ h) { 满分:3 分
6 z5 p* V1 x5 `/ i g3 @5 D: ]13. C语言中用于结构化程序设计的三种基本结构是()
8 u' g) z/ {& D; R2 zA. 顺序结构、选择结构、循环结构
9 x& o6 k( E- l4 J; {' D" k0 r: qB. if、switch、break5 C; O# Y% {/ A* ?) q M. |
C. for、while、do-while
0 ?4 z5 t/ H" Z% N J4 `D. if、for、continue! b1 a; w" K& o/ I
满分:3 分9 b8 m9 q- }- I0 @
14. 以下不是建立函数的目的是()
6 }9 `" D9 z9 W% e1 v) _2 _9 [" rA. 提高程序的执行效率
1 S% r* ]3 x: N. \% x# P1 {* N7 ?B. 提高程序的可读性: Q3 ?& }9 L3 v% d
C. 减少程序的篇幅
0 R7 K1 b0 t3 Q, \& f! j/ QD. 实现模块化编程9 @+ S3 _8 l; r2 T
满分:3 分! `% J5 U: x) a. d8 s1 F' Q
15. 有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5)); 该函数调用语句中,含有的实参个数是()+ f3 u) S8 V* [7 i z3 X% z
A. 3
' X5 V7 [1 Y5 c( K$ h/ \B. 40 ~1 @/ ~ x% n, J/ t# A
C. 5, ^4 x; G" l9 C9 f
D. 有语法错! w0 i* Z' a( F$ d$ Q
满分:3 分* J# p& r# J _
16. 若程序中定义了以下函数 double myadd(double a,double B) { return (a+B) ;} 并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是()
1 L( b$ g, o$ S3 K h9 _A. double myadd(double a,B) ;1 x& R1 A) i7 k: N9 G0 k
B. double myadd(double,double);
9 q7 G+ h4 E4 f' r- A$ S- V/ o1 @ ]$ h/ TC. double myadd(double b,double A) ;
8 w; c g |+ UD. double myadd(double x,double y);2 \7 S* l& v" R' T
满分:3 分' E: O& L6 Q" R# E) G/ D$ I& ]# j. q
17. 以下说法中正确的是()# Q" x9 j5 I d E
A. #define和printf都是C语句
h# {1 \. p; ?! _ _( bB. printf不是C语句,而#define是
3 @ C( G. I( {# ?& A/ }; J2 Q0 ]C. printf是C语句,但#define不是 D) printf和#define都不是C语句" H1 ?( x% S& M+ _; @
满分:3 分2 P, F) I5 _4 j8 l' _& I
18. 以下程序 : main() { int a=4,b=5,c=0,d; d=!a&&!b||!c; printf("%d\n",d); } 的输出结果是()
6 f; T3 I$ \4 ]A. 1
3 ^" F, {7 |# l4 Y" c! zB. 00 e3 f1 n2 q7 F) j" h$ D
C. 非0的数5 f$ [* I# V9 b: ~: k
D. -1$ o, z9 b/ B; x
满分:3 分
* |" s- Q+ {3 l. P3 ^19. 有以下程序: main() { char a,b,c,d; scanf("%c,%c,%d,%d",&a,&b,&c,&d); printf("%c,%c,%c,%c\n",a,b,c,d); } 若运行时从键盘上输入:6,5,65,66<回车>。则输出结果是()
* G R }, b2 ZA. 6,5,A,B
5 \- b; W, C+ q9 m S; B1 W% ?B. 6,5,65,66. |: h3 [% n% _! K
C. 6,5,6,5
! {0 d; F7 }- v8 B1 t$ ]D. 6,5,6,6
2 U3 s" D1 a2 X6 S 满分:3 分: L. E) Y2 C! h- s
20. 能正确表示a≥10或a≤0的关系表达式是 ()
0 I( g4 ]1 o& O: ZA. a>=10 or a<=0
4 b& X8 Z0 K" d& cB. a>=10│a<=0( _4 n' Q8 O! @# ~0 A1 S J2 k! c
C. a>=10||a<=0) V( F G& y5 j+ Q$ k. j
D. a>=10&&a<=0' F: G5 K: t* ~* e4 ^
满分:3 分
2 o+ v+ g' N# u; D5 H& M6 y' Z; e& b+ j
二、判断题(共 20 道试题,共 40 分。)V 1. ’ab’是合法的字符型常量。
@5 q+ {& L3 K8 |6 z2 r+ _. wA. 错误- N; b0 V j) d) i) X5 B
B. 正确+ X6 h+ U$ Y- x9 N- |4 m6 W; @
满分:2 分
* x" ~+ p) e* c2 w+ X2 {; M2. C程序总是从main( ) 函数的第一条语句开始执行的。
% t2 i( |2 b: ^) p$ b( ?8 P3 `A. 错误
% `' @1 e; X9 c9 Y0 b# CB. 正确
& B0 Y+ U1 r3 G$ g6 |8 C 满分:2 分
, e, r' g; x5 @2 H& U }3. 除法运算符“/”要求两个运算对象都必须为整型。
; V1 C( `! d6 n1 z5 Z$ rA. 错误
/ W1 _, Q% q9 n! X% m* w0 o. vB. 正确* j! f, {8 d1 s: G
满分:2 分( o! k! O6 @* z6 M- ~
4. 在 C 程序中, APH 和 aph 代表不同的变量。
; Y: i( f0 d8 h( X7 U9 IA. 错误6 X: N" U8 b: q: u1 Y: D+ I4 b
B. 正确
+ h1 f- e8 K/ C 满分:2 分7 {+ Z, K8 l$ @0 l8 u9 D8 v
5. C语言中表示字符串的两种方式是字符数组和字符指针。5 S/ M& [( u1 u0 ]$ g
A. 错误8 X. M$ X5 E( g0 [; j" ^" i
B. 正确
x0 Y/ x- B: |2 {! q y8 ^* Y8 f 满分:2 分
7 m8 z' H' h6 }2 N6. int i=20; switch(i/10) {case 2:printf("A"); case 1:printf("B"); } 的输出结果为A。! t6 l( _9 N2 T1 v+ M
A. 错误$ N) R- L, q$ D
B. 正确# E6 s6 c; g) ~7 E5 P9 h9 A; u. a
满分:2 分
7 y# V8 z. S" U- S0 ^7. 若有定义:int a;则scanf(“%d",a);可以给变量a赋值。
9 c. `; Y7 c" |( z7 m1 p! @' uA. 错误8 u3 v a: h; S: ]. B
B. 正确
& G% |: p- f& n3 {$ B. E 满分:2 分
) Q; d$ D" j: h! h- G" }5 O6 j8. 有以下程序段: int m=0; while(m==1) m++; while循环体执行的次数是无限次。
# y/ V' t+ F: x7 L: v: p1 oA. 错误
* ]8 i" @5 e3 d4 s) {' k7 `7 BB. 正确. h9 z/ M2 U. D2 j' J) C
满分:2 分
; A* w [. E1 ?: D6 ?0 g9. 如果一个函数不需要参数,则函数名后的括号可以省略。
& n: F& r! k; Y z3 R& n$ @" o* mA. 错误/ A: T @5 T. U6 p, H' w, b1 Z( l
B. 正确
6 ]7 ~$ w, L( z7 O* y" \+ t8 ` 满分:2 分 e @: m1 u" }$ j9 u
10. 019是一个合法的整型常量。
& a, D- O+ H9 a' [2 \A. 错误
* r/ g( X) Z9 gB. 正确
. Q% G$ _# \% }% |6 P. U 满分:2 分
: W( Q2 f* ]2 h% c' R11. 设ch是char型变量,其值为z,且有如上表达式: ch=(ch>’A’&&ch<=’Z’)?(ch+32):ch,该表达式的值是A。8 n, c. {" \3 I
A. 错误
$ m$ h& t# g1 T4 Z, P4 l/ Q! Q% zB. 正确& x0 s" o2 T" r1 G% X
满分:2 分* L/ L# D; Q/ B0 g- A$ I
12. C语言是一种低级语言。5 P/ D" y; e+ X6 A
A. 错误. t3 f6 F6 e( W
B. 正确! v+ f# B L% V, ]$ t, C5 J% H) n% ]
满分:2 分6 U7 R$ y8 k6 a6 ?
13. 设有字符数组字义char array[]=”China”;则数组所占的存贮空间为5个字节。$ u3 u) O' c7 T! I9 g
A. 错误5 y5 \& l; I1 t% H# n0 a7 b. [6 y
B. 正确1 t) C1 e, T a
满分:2 分
; E- u4 ]% D: u: u, e$ Z14. 表达式中的运算对象可以是常数、变量和函数调用。
/ {) L; J w$ L( l7 oA. 错误
& {* f- O3 d+ U' t' y6 G# hB. 正确/ g! h! N7 V+ X& ~) v' w9 o( a
满分:2 分
6 E" \- |, U$ T D) t( f15. C语言中只包含一元运算符和二元运算符。5 D. }2 n; s' K
A. 错误" m, D' ^6 @, ~8 U1 Y
B. 正确
0 Y$ p! z4 f9 @6 g4 v 满分:2 分
1 h, [7 x+ s; @. [/ w1 a16. 44.while之后的表达式必须是逻辑表达式。# e# B% E1 s! M3 Z
A. 错误
. ^ Q8 { A* ?' ~B. 正确
; t; w# L7 [5 T/ l% j7 E2 V 满分:2 分3 W" c. z; Q9 { ?6 k ?4 @8 E* N4 Q0 t
17. 从循环体中退出只能使用goto语句。
$ @- I6 u8 z7 EA. 错误
; B7 G9 j4 g0 l6 R4 o1 QB. 正确
3 p6 |/ f# x/ a/ F/ d 满分:2 分. u$ s: C/ |6 f+ o8 t( q- v
18. strcmp用来比较两个字符串的大小。
* R1 a- [ D! a8 UA. 错误4 k" K. ^. Z! F* P
B. 正确5 H* }! B, o! e2 o2 j% ?9 d' Z
满分:2 分) _+ f+ h. A5 d0 i% p6 b
19. break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。
; {1 v* G' x: J' qA. 错误& X \$ ?' @! W+ p
B. 正确
- X4 B& v% r2 W" k% D0 y 满分:2 分
% e5 ]$ y; h* i( e1 o3 Y: j$ l" Y20. 在赋值语句<变量>=<表达式>中,当表达式的类型和变量的类型不一致时,以表达式的类型为准。& K' Q3 q, S, ^% v& k3 i
A. 错误4 X/ s2 D* q% d# j8 e4 @, X3 ~$ j9 o
B. 正确
5 x+ L- [% ^ z: j1 A 满分:2 分 8 n& `4 B# R: V- `
' ]: z2 b5 t' D9 ^4 {; |5 C |
|