|
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料和奥鹏毕业论文以及提供代做作业服务,致力打造中国最专业远程教育辅导社区
4 Q# Q L# Q& `3 d# V, Y8 \# ~# q5 ]. l; h' } [
一、单选题(共 20 道试题,共 100 分。)V 1. 在C语言中,一维数组的定义方式为:类型说明符 数组名( )。: ~% z6 Q; ^5 l) p( I8 a7 U3 c0 }* s
A. [常量表达式]
5 b ]9 y0 u0 T& \+ v% r1 xB. [整型表达式]: c3 p6 o$ L8 T
C. [整型常量或整型表达式]
6 r- z5 ^/ R2 N; }, Z$ p4 C: ID. [整型常量]$ C# v5 o2 Y* s$ ]/ p& t+ I1 D
满分:5 分
]7 b- ~, B5 ~. n2. 当正常执行了文件关闭操作时,fclose函数的返回值是( )。5 Q0 v6 O" A0 U: h' D, d
A. -1
2 g' j! ?( B; v+ s9 U* h; x1 b- gB. 随机值5 r% |3 ?/ W/ l9 C
C. 0( y$ B. v5 B- A
D. 1* v3 @ Y( U- [3 y
满分:5 分
! z; ?8 v. y H1 p A; G0 K. o. Z. m3. 函数调用语句:fseek(fp, 10L, 2);的含义是:将文件位置指针( )。4 A4 V& u j( w! G3 c% M" d
A. 移动到距离文件头10个字节处6 k T. q$ Z- U2 d2 o
B. 从当前位置向后移动10个字节
. l t; g0 }' @5 L. c- R1 }C. 从文件尾部前移10个字节
+ N3 e+ j- S3 D/ gD. 移到离当前位置10个字节处& m1 z+ p! O4 O; ` W
满分:5 分- }. V" V& D* y; U. T; x3 ]$ i
4. 以下能对一维数组a进行正确初始化的语句是( )。
# ~( G5 @7 O, K4 sA. int a[10]=(0,0,0,0,0);
3 P( O/ h/ }: Q, p" T" j3 sB. int a[10]={ };
) z6 d' X0 e: c& D' ~# W0 s0 \C. int a[]={0};& p) ?* C* y1 [
D. int a[10]={10*1};" H7 f5 y+ _& Q- D; u# ~3 f
满分:5 分
# J9 K2 b% G; v/ [5. 以下对C语言中共用体类型数据的叙述正确的是( )。& p4 \. |/ v( b5 i# m9 G* J
A. 可以对共用体变量名直接赋值; _7 j5 @# H7 @5 M- {) }
B. 一个共用体变量中可以同时存放其所有成员# H9 W- B. ^5 {' n
C. 一个共用体变量中不能同时存放其所有成员$ S+ v& i, w" i1 C$ F
D. 共用体类型定义中不能出现结构体类型的成员
8 B z. n# _& u/ H" A 满分:5 分
' L5 G! ^% W; A8 @6. 若有以下说明,并且0≤i<10,则( )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I;
" }; Y$ T- a. ~ D+ L; KA. *(a+i)) F- W) u0 ~7 V% r
B. a[p-a+i]
" S2 _1 [5 F; m: aC. p+i
, N0 Z( f/ O6 R% a6 p3 J/ D8 rD. *(&a)
% ^8 t& p+ D9 e 满分:5 分
/ p0 T8 W* J# m4 |, X2 r7. 下面对typedef的叙述中不正确的是( )。
# R2 Z/ D1 U3 O7 ?. S$ h$ B8 nA. 用typedef不能定义变量名( ]5 J: Z1 l, ^0 o1 n* M" p5 T( [
B. 用typedef可以定义新的数据类型8 m/ `. M" K7 ^. v- G
C. 用typedef只是将已存在的类型用一个新的标识符来代表+ r, \3 B, W5 c
D. 使用typedef有利于程序的通用和移植
9 D5 w; O8 r8 t3 ]& k2 P/ a 满分:5 分
0 d) t% a7 y6 C+ x, w0 C8. 若执行fopen函数时发生错误,则函数的返回值是( )。
z0 ^7 {9 V+ G* ^! ]$ aA. 随机值
; _' k' [8 c: l6 DB. 1
& a, X* H. a0 c4 o2 RC. NULL ]! U2 O& L: W% ~3 P& D
D. EOF& @8 U8 x2 H+ `4 K; d9 M
满分:5 分
( N% R1 o! T$ d8 k+ d* c. `# L9 z9. 若a和b均为int型变量,则执行以下程序断后x的输出是( )。 x=15;y=15;printf("%d\n",x%=(y%=2));" G& \- B3 T% v+ J
A. 0! Z, _% e3 | ^+ u! ^( D" ~, n
B. 15 J% T- ?, S/ u/ w: N" o1 [7 {# O
C. 65 Q8 A! p6 C/ D
D. 12
% d( Z0 x; }; X" @ 满分:5 分7 D8 m" k6 Q) Q% J# q; v7 Q# W, C
10. 设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for (y=100; x!=y; ++x,y++) printf("****\n");
8 s/ z) E0 v0 GA. 循环体只执行一次
9 [$ L# F, H$ [1 y1 hB. 是无限循环
, f4 F' Z: p& a& V7 \! ~0 cC. 循环体一次都不执行4 H5 l" i( ?( l
D. for语句中存在语法错误
* S3 C1 m; U2 ~( W, z& F1 w' s6 `! l 满分:5 分
7 Y: O/ Y7 a4 ~6 ]- _# P11. 若调用fputc函数输出字符成功,则函数的返回值是( )。8 m$ z8 {% U! ]% S0 R
A. 输出的字符5 \* ]6 o* J h; h& ]0 n
B. -1
. i" V, x) ?6 ^5 O: W/ r* MC. 00 i. K" z+ P; [0 F2 b
D. EOF
6 r) V! S4 x# c1 U 满分:5 分
# X3 j: ^0 H/ a% Q) O) V12. C语言程序从main()函数开始执行,所以这个函数要写在( )。
# c& J( D' @; l2 I/ y$ m1 v5 BA. 程序文件的开始
! `& G! _4 e3 B4 Q# CB. 程序文件的最后
/ A, W7 i1 M9 DC. 它所调用的函数的前面
" x% p: Y- D* FD. 程序文件的任何位置' k" d* o% P5 A0 U( u# f9 v1 \
满分:5 分2 M! W* S# r! k
13. 以下在任何情况下计算两数积时都不会引起二义性的宏定义是( )。
6 t5 L! N! U- Y" M! a% ~" c% SA. #define MUL(x,y) x*y. N8 U9 l A% W9 h. D7 R$ K$ V" v
B. #define MUL(x,y) (x)*(y)
" ~ a9 i) S& I: aC. #define MUL(x,y) (x*y)
; J# j R0 ?5 W( PD. #define MUL(x,y) ((x)*(y))"7 h8 e# j: L g
满分:5 分
q& N9 n, x0 d' w14. 以下程序段的执行结果是( )。 int x=-3; do { printf("%d\n", x++); }while(!x);' \" p$ V. t& _: p
A. -3
* s4 p9 i ?3 C. O5 R2 f3 DB. -21 I3 B/ E: t4 ]5 I* T# ~7 t. w
C. -15 t+ I( V. u4 [* |' M1 v! l
D. 陷入死循环3 n; M7 V+ B8 u+ M6 g) V
满分:5 分
. D8 [/ R+ u" ^( J$ X15. 执行以下程序段后,y的值是( )。 int a[ ]={1, 3, 5, 7, 9} int x=0, y=1, *ptr; ptr=&a[1]; while (!x) { y+=*(ptr+x); x++; }
7 Q- \; w& O) X3 k' r4 c2 Y2 pA. 18 F8 y+ p7 Z% [3 E! D3 z
B. 2
]& i! B/ {3 x% C; fC. 4, p' W; x6 |7 u
D. 24) P& `; P. b+ V, g0 @3 U; m
满分:5 分
" \; L" a5 L/ V0 h7 Z16. 若二维数组a有m列,则在a[j]前的元素个数为( )。7 ^4 b, f( P) Q; m
A. j*m+i
) e Q0 S0 o" B2 ] y9 \' w( iB. i*m+j
& @: v0 b: r6 K& UC. i*m+j-1) _% Q) H* p0 `
D. i*m+j+1+ Z, ~6 ^; |# d/ u- h
满分:5 分0 g. v3 K) h% [2 ~9 S( f
17. C语言中字符型(char)数据在内存中的存储形式是( )。
4 {" y% @3 g3 _1 S( }A. 原码" s! H0 h: d8 \. m. U7 G
B. 补码7 W- K c' }+ d$ a( T) Q6 C
C. 反码
9 v4 n+ I! G2 E1 j" b7 X; _, SD. ASCII码
" W; N( J6 R( U; R" M4 _ 满分:5 分4 D* J/ ]* ^6 ^* j4 d
18. 有下面的程序段 char a[3],b[]="China"; a=b; printf("%s",a); 则( )。" ~7 P* x: o4 g& U: E
A. 运行后将输出China+ l x- K, d- ?% t, U
B. 运行后将输出Ch7 A* H% c9 H, k; I7 R3 ]( i9 a
C. 运行后将输出Chi
[3 ?4 z; I8 fD. 编译时出错% u/ [: N. }4 k* d8 L( H! S$ U
满分:5 分
' X$ n, K _4 @" Q% E" W6 b* }; K+ J19. 以下能对二维数组a进行正确初始化的语句是( )。
8 C5 V- x. Z! h+ y/ M$ M5 mA. int a[2][]={{1,0,1},{5,2,3}};
. y/ Q0 i8 ^4 b( h) r( cB. int a[][3]={{1,2,3},{4,5,6}};% H! ?9 E3 z- T+ D4 L
C. int a[2][4]={{1,2,3},{4,5},{6}};
' j. f/ A7 l A5 |5 w! DD. int a[][3]={{1,0,1},{},{1,1}};"! ]' p, \& B; F/ W& U' I" |
满分:5 分, [+ r5 U& x) R: K6 h6 I
20. 若二维数组a有m列,则计算任一元素a[j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第一个位置上。)! [8 [1 f, p! P1 Q. B& }+ ]7 ^" w; P7 v
A. i*m+j
! Q# H! ]8 {; M& |% mB. j*m+i& H: w* [$ X7 k' ^
C. i*m+j-11 Q; v6 k0 c4 k. ? b
D. i*m+j+1( l/ _0 M7 w m+ [% M) D
满分:5 分
# D8 F2 [5 ^# P1 r! n! U9 @( a9 h ^9 }6 g0 \# t% @( h! _
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料和奥鹏毕业论文以及提供代做作业服务,致力打造中国最专业远程教育辅导社区 |
|