|
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。
; H5 ~# J0 I, `! d1 O5 `# b/ V! S
一、单选题(共 20 道试题,共 100 分。)V 1. 对两个数组a和b进行如下初始化 char a[]="ABCDEF"; char b[]={'A','B','C','D','E','F'}; 则以下叙述正确的是( )。$ @; u4 l* `# x/ o. R B2 k
A. a与b数组完全相同) F, C$ p5 R6 S* Z3 H% O
B. a与b长度相同
: ^5 A0 \5 _: Y9 l3 DC. a和b中都存放字符串/ J% k( K: T6 x& G0 H
D. a数组比b数组长+ p$ q( w) x- o/ m" i
满分:5 分5 |0 R: ~8 e$ ]+ A" | J9 f0 Y
2. 以下对二维数组a的正确说明是( )。
/ `' Q$ c' M8 y; N4 M4 Z+ x9 Z/ gA. int a[3][];5 S% e9 N6 ~# w3 F" m: K# B
B. float a(3,4);1 Y5 m/ ^9 M4 w/ w: Q3 V
C. double a[1][4]
, _& w, `) g8 qD. float a(3)(4);8 A# g" X$ j# `, y6 l8 L
满分:5 分' \$ h) s% r s9 l2 y: j
3. 若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) { t=a;j=i-1; while(j>=0 && t>a[j]) { a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。 U: Z; D- [+ a# E3 o3 ]1 K
A. 对数组a进行插入排序(升序)
2 R8 F+ @9 @; K+ J4 H9 }B. 对数组a进行插入排序(降序) T9 L& ]" Q! i, K, ] `/ d; W
C. 对数组a进行选择排序(升序). \! y. P4 Y3 c7 {
D. 对数组a进行选择排序(降序)
. S2 p: e! \9 @# C. o" O 满分:5 分9 S m/ A1 H1 p1 D
4. 执行以下程序段后,y的值是( )。 int a[ ]={1, 3, 5, 7, 9} int x=0, y=1, *ptr; ptr=&a[1]; while (!x) { y+=*(ptr+x); x++; }
) D0 D# r; h. e/ e# N3 O( XA. 1; J. s9 k1 D+ w0 H2 F" R
B. 2% D. U4 m [ g
C. 4& l; N! T* b+ B. z+ u" T/ I; a
D. 24' J+ }6 y6 H2 w+ l- D: |( M( H
满分:5 分: r R! N% v; q! |, ^2 M' W; G
5. 以下正确的定义语句是( )。' e& W% c! B# H5 d; V9 R
A. int a[1][4]={1,2,3,4,5};3 e: o _) p2 G, O1 g
B. float x[3][]={{1},{2},{3}};9 e! t8 p0 N. h( C+ r8 M
C. long b[2][3]={{1},{1,2},{1,2,3}};; q/ |$ g9 R9 A4 ^
D. double y[][3]={0};
& G$ ?1 E% V$ m x 满分:5 分
: w( I5 t5 u" t2 m6. 有字符数组a[80]和b[80],则正确的输出语句是( )。+ Q$ `" h. [* W) w) |3 }
A. puts(a.b);
8 i2 j [# k. s1 UB. printf("%s,%s",a[],b[]);
6 M. T6 H' M7 f+ hC. pitchar(a,b);
, e1 N( ?! X' e# W OD. puts(a); puts(b);
k8 w; u2 ~ r7 b 满分:5 分2 h) |- f; q: L' v
7. 若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。
/ ^$ w6 r: J# Y1 LA. *pc[0]代表的是字符串"aaa
* J2 I6 h3 s5 x% UB. *pc[0]代表的是字符'a'
* C2 N; X8 m+ D! E |, OC. pc[0]代表的是字符串"aaa"8 P+ ]7 H# z5 w3 o3 E, t/ M8 k% A
D. pc[0]代表的是字符'a'
' O' Q7 H0 W; V; j3 r 满分:5 分; B; R0 U. {$ ` {6 V
8. 下面程序段的运行结果是( )。 char str[10]="output";printf("\"%s\"\n", str);; k, U! J4 f+ w2 }# Q2 Y9 [8 C
A. output
3 G) e7 F/ ]" iB. "output"
! H% R4 h ?3 c9 L+ ?C. \"output\"* ]$ r- u9 C8 f- A. O
D. 编译出错
2 m: s7 Q1 Q4 n/ | 满分:5 分+ C% Y" u' W5 q B, s$ e
9. 在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。& L! \- ~7 [" W1 n! T1 ]8 Q
A. 整型常量
$ _, z3 o {& ?$ k( I' oB. 整型表达式2 N* \4 y$ W$ }* v8 V3 g' z
C. 整型常量或整型表达式
$ S6 ]# x8 z* m) q: RD. 任何类型的表达式( q2 \% |! @7 X! K
满分:5 分5 @% G4 B. e6 ]! Q
10. 设有一段程序: int *var,a; a=100;var=&a;a=*var+10; 执行上面程序段后a的值为( )。
u$ B* r/ ~0 B ?5 FA. 1200 v$ A1 a! K# }0 e8 {6 C2 c
B. 110
/ `! K g" @: }- ]C. 100
. {% ? K, W4 {6 sD. 90' l6 k+ C1 t% A1 w
满分:5 分. m3 e3 ? }& w0 O; o- I
11. 以下程序段的运行结果是( )。 char a[ ]="program", *p; p=a; while (*p!='g') { printf("%c", *p-32); p++; } n/ c$ b5 q6 ^6 T- p" b
A. PROgram
/ l7 P: E: C& B p/ q) RB. PROGRAM
$ T1 p0 h! n3 W7 x% a9 u7 XC. PRO: @8 ]8 l9 w3 d t
D. proGRAM
A/ r8 d2 Y+ q, q 满分:5 分
% @' c* O" m* x6 g/ X2 Q12. 若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。! r u8 g o9 L: H, ^7 r0 _
A. 2
# b I5 c) X |) b, C7 [$ ^) FB. 3 _& I& u& T" U/ u, _1 j' H( ]
C. 4# l% I& o5 v2 r' T
D. 无确定值6 e0 h4 X2 w, z5 l( H5 f; t
满分:5 分; S1 n q+ n$ l: [, z
13. 若有定义:int x[10], *p=x;,则*(p+5)表示( )。/ h' ^7 n2 k9 N
A. 数组元素x[5]的地址
% e1 T% ?2 C8 i7 j3 \9 \, K6 E {B. 数组元素a[5]的值7 h7 L* W6 {7 m& u( s, p* a
C. 数组元素a[6]的地址! _. R' g' Z& ~+ ?
D. 数组元素a[6]的值
- l a7 p$ n4 l( a 满分:5 分
, W: o5 L0 b4 ^, w0 i1 j" H0 s14. 下面程序的运行结果是( )。 main( ) { int b[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *q=b; printf("%d\n", *(q+2) );}6 x% W% I! Z# _- x: a4 @
A. 1
) T; N3 Z" m0 m4 o" t, YB. 2
4 w. Y$ `5 r( I1 S8 }5 \2 WC. 3
' r J" r8 |* @6 ]D. 4$ T! s) b& b% a' u' Z
满分:5 分
: k( L9 j$ O8 ?* P) G3 ~# t15. 下面程序的运行结果是( )。 void prt(int *a) { printf(“%d\n”,++*a); } main() { int b=25; prt(&b);}
7 i$ |% W- o: E* tA. 24- B9 s. z7 w/ N$ h
B. 256 Y q6 }$ s4 H6 o# P
C. 261 K2 Y* s) ]3 Z0 j
D. 27
8 K8 R# P V" [+ S& ~ 满分:5 分( a2 O/ H' K6 H& q) S0 F$ P
16. 若二维数组a有m列,则计算任一元素a[j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第1个位置上)
. i5 X; C( R+ ?" vA. i*m+j# X2 r& H" D% {8 E
B. j*m+i
7 ]9 \+ b7 {& |5 yC. i*m+j-1$ F4 P( [) u& |8 b$ e# x& u W
D. i*m+j+10 D& m A6 V1 b; n
满分:5 分4 R$ j# |: }- F: U9 X' a$ o
17. 若有说明:int a[][4]={0,0};则下面不正确的叙述是( )。! B3 a" C7 x! C) G6 @, b) \! a" k
A. 数组a中的每个元素都可得到初值0
: ?) a* w" ^# e$ P% \: l7 _B. 二维数组a的第1维大小为1: c: h& `! M% p, f
C. 因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1
3 } s% g3 i8 T! MD. 只有数组元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0$ |" W1 n7 K6 q# G. T3 P
满分:5 分( r5 b W: M4 \2 `" Q
18. 以下判断正确的是( )。* ?* s- A2 f3 i( W/ c
A. char *s="string"; 等价于char *s; *s="string";
2 q& [4 p% @6 ]1 v' S% P2 @B. char str[10]={"string"}; 等价于char str[10]; str={"string"};
8 g' z: ~8 Z) ^3 |* KC. char *s="string"; 等价于char *s; s="string";+ L9 ?% Q: \9 _& I
D. char str[10]={"string"}; 等价于char str[10]; *str={"strint"};"9 u* t( m z; p# H( H! P
满分:5 分' [8 a8 v0 w6 R& t
19. 若有以下语句,则对x数组元素引用不正确的是( )。 int x[ ]={1, 2, 3, 4, 5, 6}, *ptr;ptr=x;
0 ^' l9 z# v7 \% m7 }' _6 D- @A. *(--ptr)( v: m2 f% `, N2 G
B. *(ptr--)
' ?6 N3 ~" g8 H7 z: t j" C4 NC. *(ptr++)
$ n* L* M2 @0 q" Q rD. *(++ptr)2 d2 S$ `$ O- t4 G
满分:5 分9 T; \) j% f) h5 ]8 u
20. 以下能对二维数组a进行正确初始化的语句是( )。
# s, i: j4 I0 j& Q. TA. int a[2][]={{1,0,1},{5,2,3}};
# M z5 t9 \7 r5 }" }( [$ HB. int a[][3]={{1,2,3},{4,5,6}};% P. e+ \0 Y# X! N
C. int a[2][4]={{1,2,3},{4,5},{6}};
8 h8 F. X# O9 vD. int a[][3]={{1,0,1},{},{1,1}};"9 s( S" A% v! A5 Z
满分:5 分
( | D/ U: j3 j. G
* P) Y1 w8 U0 u+ {谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。 |
|