|
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料和奥鹏毕业论文以及提供代做作业服务,致力打造中国最专业远程教育辅导社区& J3 z/ e- Q1 n9 d& k5 p9 w
* p' _- i5 s/ W
一、单选题(共 20 道试题,共 100 分。)V 1. 在C语言中,一维数组的定义方式为:类型说明符 数组名( )。7 ?) I4 v/ `( [9 S& S- K+ V
A. [常量表达式]
1 d' V- G# F! \! I0 U% f7 @6 UB. [整型表达式]
: P3 y) w1 Y+ V! D4 b" pC. [整型常量或整型表达式]
2 c9 R/ c- K l& dD. [整型常量]
" [/ Q/ r1 u7 \' q 满分:5 分
9 }5 P3 |3 O& i- a3 V( n, m D2. 当正常执行了文件关闭操作时,fclose函数的返回值是( )。: H; e. {! `8 C+ _+ ]( p4 ]
A. -1
" Y: P9 v+ g" d( W9 n7 HB. 随机值
- f5 k$ g5 |8 E+ UC. 0
; D' L) `, x; n {9 n* fD. 1
$ F _; g+ d; y! }" D8 H1 o4 t# J 满分:5 分- L- S9 \ H" p9 T- f1 j5 C) V( D
3. 函数调用语句:fseek(fp, 10L, 2);的含义是:将文件位置指针( )。3 U9 E6 p. f/ U/ @- ^1 I
A. 移动到距离文件头10个字节处
7 I1 D1 H8 w" BB. 从当前位置向后移动10个字节
" P9 V" y& f5 X; V$ KC. 从文件尾部前移10个字节+ @3 E# e D% u7 X* c. f
D. 移到离当前位置10个字节处/ m% Y" L3 C) R
满分:5 分
& {! p+ u5 l; a/ o4. 以下能对一维数组a进行正确初始化的语句是( )。
& x6 Z" r- S' W1 j0 N# E# E* ^4 OA. int a[10]=(0,0,0,0,0);
/ t9 \ a( h5 b) @" w( q: U% [B. int a[10]={ };: E8 x/ N+ g7 x6 m/ b& P
C. int a[]={0};, A+ r$ A; X2 `8 M1 s5 V2 ^$ ^0 t
D. int a[10]={10*1};
2 S' D0 T8 k2 d. g 满分:5 分
. L1 k" R% T- M2 h- c6 j. T5. 以下对C语言中共用体类型数据的叙述正确的是( )。- o1 n5 g& e! L( F0 j/ j8 ?# _, @; a
A. 可以对共用体变量名直接赋值
% ~" r. c$ a* q, iB. 一个共用体变量中可以同时存放其所有成员6 g/ H$ b" s T) u7 a3 z. G2 r
C. 一个共用体变量中不能同时存放其所有成员
( D8 B( j1 _; ^' g6 aD. 共用体类型定义中不能出现结构体类型的成员" [8 b+ |* S" r. Y* I. F) [
满分:5 分
* a2 \% D8 {5 ?% h$ g% {9 K6. 若有以下说明,并且0≤i<10,则( )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I;# X* Z# l0 P6 T
A. *(a+i)
, ?# n0 j+ _4 \$ O+ G; W; X( MB. a[p-a+i]# H" l# Q: v, A1 Z; d( w0 t* e
C. p+i
0 H5 |) z1 ]9 B& Z8 pD. *(&a)
2 [$ j) F v8 u, x z2 B, N5 t5 } 满分:5 分
- q) [+ I4 ^% l( {# y" H- ~5 h. V7. 下面对typedef的叙述中不正确的是( )。
" o6 C M% G. eA. 用typedef不能定义变量名* n$ m0 ~; V3 r" B& a! i
B. 用typedef可以定义新的数据类型
: k3 a f# T) m q+ T0 ]C. 用typedef只是将已存在的类型用一个新的标识符来代表
/ E/ ~ }# f1 u& A% YD. 使用typedef有利于程序的通用和移植8 ?+ ^1 {5 V+ O& O! C5 P4 }; M
满分:5 分3 v' f8 Z/ r5 o5 @
8. 若执行fopen函数时发生错误,则函数的返回值是( )。
3 U) ^+ \$ D4 {8 z2 Z1 ^A. 随机值
* j9 W: \% Q- F( z5 U" H+ ~ p, B3 hB. 1$ _" w9 L: O. _: Z/ U' L
C. NULL* m% `, c! n: Q+ u1 i3 t. [* R
D. EOF- ~8 d3 u4 X, }. D
满分:5 分
# u, `; p; E6 m1 e2 c. o4 t: p7 h9. 若a和b均为int型变量,则执行以下程序断后x的输出是( )。 x=15;y=15;printf("%d\n",x%=(y%=2));
9 P5 N. @; p" t0 i: k# _A. 0
% E% U, [3 I/ R( R) eB. 1
; a- P8 |% V. DC. 67 A" I3 z) V6 J4 B, P
D. 122 d1 s4 O9 P9 M. F: s
满分:5 分5 v0 l! Q3 X2 R: O. c3 i/ n: T
10. 设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for (y=100; x!=y; ++x,y++) printf("****\n");! K, m% `+ N* Y! Q3 P
A. 循环体只执行一次) v, F" M J W& Y8 _
B. 是无限循环7 p# j# J/ {' m
C. 循环体一次都不执行
% O* j) t0 p/ {. T( HD. for语句中存在语法错误! J6 I/ Q, i) B* A( K2 y9 u
满分:5 分
: p, ^9 M: f) @5 m11. 若调用fputc函数输出字符成功,则函数的返回值是( )。+ Q. l g) V. P4 r4 p1 h- Y1 c
A. 输出的字符/ a. v y; Z* D q- b
B. -1
6 b! M2 r+ W7 K0 W/ Z2 dC. 0 d5 E) ~0 ^' v$ S
D. EOF! S9 t5 O6 {/ `1 k' U3 h. E4 U* Y% X
满分:5 分* C" i0 d3 L) O9 V
12. C语言程序从main()函数开始执行,所以这个函数要写在( )。
, a/ B4 K+ i5 c9 r% PA. 程序文件的开始
8 G, \# H* }: C+ M! vB. 程序文件的最后
e, \, ^/ H. q* J1 X- sC. 它所调用的函数的前面
1 E1 N7 F9 P% U \+ L, q% K# I) KD. 程序文件的任何位置
/ S# y0 E+ I* ?4 G* O$ M t 满分:5 分
6 Y8 X- b8 I9 S! a1 n$ X13. 以下在任何情况下计算两数积时都不会引起二义性的宏定义是( )。. ~3 x- N3 d3 T! g) l
A. #define MUL(x,y) x*y1 R5 J$ T; c t8 `! D: I
B. #define MUL(x,y) (x)*(y)
) [4 e; O4 I* p0 `. X+ wC. #define MUL(x,y) (x*y)1 f$ U* C; ?8 G6 P4 w" t( t
D. #define MUL(x,y) ((x)*(y))"7 e5 O' x4 H1 `0 u5 z! V" a g
满分:5 分
# Y$ l4 U1 U, L% z7 `6 b14. 以下程序段的执行结果是( )。 int x=-3; do { printf("%d\n", x++); }while(!x);9 L* }% o. f0 S* g/ U( x/ X
A. -3. Z% O1 e2 t$ G3 v
B. -2$ D/ K/ k) _" Z1 {) {9 {; Q4 S
C. -1/ q- f' t( t4 U3 s
D. 陷入死循环/ ]! ~& r, @& Q5 }) [( J. ~
满分:5 分
+ S9 m2 I9 u' ?% K& d' N, W15. 执行以下程序段后,y的值是( )。 int a[ ]={1, 3, 5, 7, 9} int x=0, y=1, *ptr; ptr=&a[1]; while (!x) { y+=*(ptr+x); x++; } u, q. h' j; c# I' `
A. 1
5 A( K7 m& }. F7 y1 mB. 2/ C+ f* q5 d5 G
C. 4
* Y$ y8 `' }1 Y) g( o9 FD. 248 d& p' t% Z# Z1 k; s& s
满分:5 分
1 c0 d' ^$ m6 X- ^2 z8 [16. 若二维数组a有m列,则在a[j]前的元素个数为( )。
; ^- K' c# ?9 \: x+ u! ]/ dA. j*m+i
1 D$ b/ C+ {! b( b- JB. i*m+j+ Y+ C( d4 ~/ E5 F$ \
C. i*m+j-1
4 _& D: E. V, r" v6 i+ h4 K, hD. i*m+j+1$ C) `) V/ n) U( b
满分:5 分
- d$ R) s5 R& F1 K. O5 [# H17. C语言中字符型(char)数据在内存中的存储形式是( )。7 h" ]2 _! [( b: _9 h
A. 原码( S0 Q$ z, c3 ~. Q
B. 补码 _& s2 f3 M0 G
C. 反码
+ ~0 H, T6 H! R3 r' Z! {! ]( `5 {- eD. ASCII码. L( M6 s, c! ]. ^" s
满分:5 分
h: \2 x$ w$ Y8 [5 X2 L7 M18. 有下面的程序段 char a[3],b[]="China"; a=b; printf("%s",a); 则( )。
# r( m Q6 r+ x. c1 yA. 运行后将输出China5 l1 }; J6 ]# j4 A/ w
B. 运行后将输出Ch0 [# L' u7 P* V. |2 v9 |, f) j
C. 运行后将输出Chi/ A0 T2 g) L' P* l( f
D. 编译时出错! J, t* X/ U! n% T- d
满分:5 分
* G k( N+ h0 }( B% {- X) J' B5 P4 p19. 以下能对二维数组a进行正确初始化的语句是( )。; z4 _5 z( D( J+ U) e; b% r
A. int a[2][]={{1,0,1},{5,2,3}};3 Z& I, }/ ~; ~! v1 v( Q
B. int a[][3]={{1,2,3},{4,5,6}};
' I& B: ~; m9 fC. int a[2][4]={{1,2,3},{4,5},{6}};/ I( f$ l' H5 u% S( l. U
D. int a[][3]={{1,0,1},{},{1,1}};"% B' A0 W4 v4 Y" Y( l0 O% n
满分:5 分7 o3 J# ^- X& }4 g& Y% b
20. 若二维数组a有m列,则计算任一元素a[j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第一个位置上。)
$ n( K+ }( d2 U' t, WA. i*m+j/ [ A" G3 {! e- V2 p
B. j*m+i
# l. M* R) G9 s. L# F$ xC. i*m+j-1$ ?" L' W5 }9 D) B) Q G: P |2 D
D. i*m+j+1. O& a" }0 B' d: X: d
满分:5 分 & @6 P1 x2 s8 z
, y6 g5 s) N2 O8 f4 h
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料和奥鹏毕业论文以及提供代做作业服务,致力打造中国最专业远程教育辅导社区 |
|