|
一、单选题(共 20 道试题,共 100 分。)V 1. 若用fopen打开一个新的二进制文件,要求文件既能读又能写,则应选用的文件方式字符串是( )。
9 A) C1 O0 r" _% K" r; N6 `3 @A. "wb+
0 u+ W+ o" o3 L7 hB. "r+", L& H, n j4 c1 x
C. "rb+"; [ X, b5 L8 O* C( \. p' A, J( Y+ j
D. "ab+""( W% c( D2 V/ e
满分:5 分
6 C e3 P5 D# {2. 下面对typedef的叙述中不正确的是( )。
: H9 c9 ~0 ?3 s1 k9 D5 y' lA. 用typedef不能定义变量名- J7 `) t5 t4 d S6 Y8 H0 X
B. 用typedef可以定义新的数据类型
. ~4 X( s# w: k* H, r' y! CC. 用typedef只是将已存在的类型用一个新的标识符来代表
* v! H/ i* V$ I' H2 p) Y+ wD. 使用typedef有利于程序的通用和移植
: N# z& O/ U5 o4 G: l: u! S 满分:5 分
) I" y# w% N; Z! W8 O3. 若a、b、c均为int型变量,则执行以下程序段后的输出结果为( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d\n",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",a,b,c);. Q6 b- K6 N" a* x5 r
A. a=10,b=15,c=10a=10,b=5,c=10" b! ?2 w8 w7 U I; |4 R5 _
B. a=10,b=10,c=10a=10,b=5,c=10* Z& f! R8 o4 j1 B5 b b
C. a=10,b=10,c=10a=10,b=5,c=154 b0 @ T8 k3 X
D. a=10,b=10,c=10a=10,b=5,c=5
7 u& Q1 U. {* P$ w8 a+ F. F. P 满分:5 分
8 [6 J: Y- R: ^9 V1 t4. 以下能对一维数组a进行正确初始化的语句是( )。: G1 [3 }/ E1 c2 B
A. int a[10]=(0,0,0,0,0);2 n" B3 h" ~/ z f
B. int a[10]={ };
' g8 ]0 K" N" v# k1 |2 Y DC. int a[]={0};! m# T3 c2 r7 l8 Z
D. int a[10]={10*1};$ P, A# ?8 E) v; I$ x, e
满分:5 分
. U- C$ B+ g; ~! z+ F, J5. 当定义一个结构体变量时系统分配给它的内存是( )。% q) V# j4 k+ a; F3 L$ ?
A. 结构中第一个成员所需的内存量
0 x, q+ n. Y$ K8 d/ v. b; z9 nB. 结构中最后一个成员所需的内存量9 V$ c& T- J, W5 t- [% O
C. 结构体成员中占内存量最大者所需的容量
+ Y1 W. c: q" t B# \5 W! UD. 结构体中各成员所需内存量的总和
3 q0 `0 F+ D' X! N 满分:5 分
5 X [7 k6 }2 r% I7 v8 y9 `6. 下面程序段的运行结果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]);6 }; U* @9 m6 i
A. 空格
7 p" `. r0 m! H ]# {# rB. \0& L! _5 x# M! u+ S0 [/ F
C. e
" V2 m- w/ O+ D( w6 DD. f
7 c# M% f; R' p0 ]% b: H: c 满分:5 分" q U* |+ D# `
7. 有下面的程序段 char a[3],b[]="China"; a=b; printf("%s",a); 则( )。
2 W- z/ P* w4 }* H$ P6 W8 Z( iA. 运行后将输出China2 i2 f3 ?4 E. P" |
B. 运行后将输出Ch2 A7 i4 O* T4 j0 t8 F. i3 P% N
C. 运行后将输出Chi
' @4 ^4 W* U0 `D. 编译时出错
1 b+ G# [" b- @0 u4 O' y 满分:5 分: |6 k9 @7 C# y1 F+ r
8. C语言程序从main()函数开始执行,所以这个函数要写在( )。
0 m' ?% h! Q3 \" h# J- tA. 程序文件的开始
% ?# u' q9 {7 ]B. 程序文件的最后
& ]- V% b$ a" S& S0 O" j2 GC. 它所调用的函数的前面
3 Q! j, t8 f% p7 `7 o+ b, s/ kD. 程序文件的任何位置
: f! q' r4 w) a) \& a! y- r3 a- n 满分:5 分- S# z9 A* U) P( U( l6 f
9. 若用fopen打开一个新的二进制文件,要求文件既能读又能写,则应选用的文件方式字符串是( )。- m7 U( o' Y" q3 E* r
A. "wb+
# O& [ V8 C. I1 jB. "r+"0 Z" n, P9 W. ]( W
C. "rb+"
: m M9 T: G" dD. "ab+""
0 Y1 W& F$ I5 f 满分:5 分. A% P7 r) H0 K2 L& D l6 b! |
10. 已知ch是字符型变量,则不正确的赋值语句是( )。
5 F2 E5 k( M9 k8 U% S: ~A. ch=5+9;
# k: @2 A' _" ?/ y! a1 d8 W6 OB. ch='\0';
, G$ P6 o% p* A7 uC. ch='7'+'9';: {& Q3 `0 T2 D" T/ @9 q& b
D. ch='a+b';* D4 R& `1 z2 G2 i
满分:5 分
# f$ i. @& u% R9 k7 N2 _11. 执行以下程序后,m的值是( )。 #define MIN(x, y) (x)<(y) ? (x) : (y) main( ) { int i=12, j=8, m; m=10*MIN(i, j); printf("%d\n", m); }: N/ |- c& \) l: d! G
A. 1200 U3 c" h, q: F/ _" g4 e
B. 80+ p7 z% G: a7 u9 u
C. 12
& b* {: T5 O7 yD. 8
1 F) B Z- c- H. V" u- A 满分:5 分; Q/ x. Q5 A8 ^4 `+ L( \( w
12. 若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。
( N/ X3 `0 Q- q' s" e& A1 QA. 2
4 M9 b- o9 t) AB. 3" c g7 p0 y/ p$ Y5 N# ?! h8 S$ O
C. 46 Y) k; Y( [- x5 g6 a
D. 无确定值
* T j& r+ G$ v# w, X 满分:5 分
+ e9 z2 M/ t: b! [4 c) g+ `7 h4 E7 q13. 函数调用语句:fseek(fp, 10L, 2);的含义是:将文件位置指针( )。
6 y9 g; Q8 v" t j: h' `. N: aA. 移动到距离文件头10个字节处
$ K2 e, L7 _, F9 t$ {B. 从当前位置向后移动10个字节
& s# r5 g# @5 T2 X# iC. 从文件尾部前移10个字节2 A0 b4 P4 H. U; ^% \# ^: E
D. 移到离当前位置10个字节处
9 a" A. L+ G, Z* p9 l' u 满分:5 分
: N2 d$ H5 U) w; Z0 I* J14. 以下程序的输出结果是( )。 main() { int a=0,b=1,c=0,d=20; if(a) d=d-10; else if(!b) if(!c) d=15; else d=25; printf("d=%d\n",d);}
! r$ c, o H* E7 U. jA. d=10# N' I1 A8 H2 j' c
B. d=15. A1 [+ m4 [3 a& Y0 A1 e) y( [
C. d=20
2 V$ n! g! i1 J( K$ GD. d=25
/ G$ w0 m% Q; a& {+ q/ m 满分:5 分/ J8 V. G. T& x9 q6 [. w+ _
15. 当正常执行了文件关闭操作时,fclose函数的返回值是( )。
: X; X1 A- C3 |7 Y; TA. -1
1 q8 _4 ?* F) t% Y! m KB. 随机值9 U8 y: X7 b( ^( s% S
C. 0
! ~- Z; B) J$ X0 w/ sD. 1
0 v' R- }% w% o9 { 满分:5 分$ a# Z4 T2 k2 l, O$ m! v$ ^) J. b; z
16. 若有定义:int a[2][3];,则以下对a数组元素地址的正确表示为( )。
: J, `0 G, n A+ u, e- l7 c4 BA. *(a+1)& a; p+ J+ }0 r( o2 f' z8 o
B. *(a[1]+2)
5 H+ U8 C" l# [8 J/ m7 P+ J% _$ VC. a[1]+36 P8 i3 n8 k T- o
D. a[0][0]5 e% |$ K8 E, W- U: H# B' X
满分:5 分
: [) W0 t6 h! ?4 b17. 若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是( )。
( q* z. }) y4 Y' D- g) j0 UA. a, p, &*a4 r- W7 {! a; L
B. *&a, &a, *p2 y; Q( L! f) f0 | L# g
C. &a, p, &*p
* e9 F. c+ R- w# B5 xD. *&p, *p, &a"0 P# U! \0 e: Q/ c7 B" a' q6 I
满分:5 分
$ k% Q$ |, ^. q! y% x: A0 c18. 以下程序段的执行结果是( )。 int x=-3; do { printf("%d\n", x++); }while(!x);
) T' s: g& \% GA. -3% R$ E1 ~9 Z+ u: v( d
B. -2
2 E- i7 H% A" q( ]C. -1
$ \1 y$ q+ b) v6 q8 iD. 陷入死循环
6 S# e6 h* w% F+ L+ B4 A7 L 满分:5 分
. X' F/ h) y5 \! g# O+ d% J/ d19. 以下对C语言中共用体类型数据的叙述正确的是( )。
8 J8 e [4 P6 X$ r( s UA. 可以对共用体变量名直接赋值
$ J/ C& M1 V6 m) S& bB. 一个共用体变量中可以同时存放其所有成员! Q8 _ n h! Q5 ~' B9 b$ ?8 s
C. 一个共用体变量中不能同时存放其所有成员
1 b/ G& }# X) v% [ x" G4 AD. 共用体类型定义中不能出现结构体类型的成员
! a+ `" D$ G6 f" P* k+ ?3 o" }( ` 满分:5 分
) n1 t( |# R+ I" ^20. 以下正确的定义语句是( )。
0 N* I+ {4 w9 ^. |7 u" E2 O! b; J6 sA. int a[1][4]={1,2,3,4,5};2 b2 Y) f* t* I8 o& d2 l
B. float x[3][]={{1},{2},{3}};6 K+ E# J, l, l( V" p1 \8 G
C. long b[2][3]={{1},{1,2},{1,2,3}};: ?1 O( h) J7 m2 e2 g
D. double y[][3]={0};2 Y" o4 h# q& ?. b4 i
满分:5 分 0 H3 t) n# _! ?# e9 a5 X
9 S' ~! ^3 V7 k4 [ |
|