|
谋学网(www.mouxue.com)是国内最专业的奥鹏作业资料,奥鹏离线作业资料及奥鹏毕业论文辅导型网站,主要提供奥鹏中医大、大工、东财、北语、北航、川大、南开等奥鹏作业资料辅导,致力打造中国最专业的远程教育辅导社区。7 @- }9 v. S4 F9 A: m3 _# @) R1 u
$ Q' p3 l$ P J
一、单选题(共 20 道试题,共 60 分。)V 1. 当说明一个结构体变量时,系统分配它的内存是(). H# x7 _: K2 o4 ?* k5 b
A. 各成员所需内存容量的总和
0 P2 g( W u. C2 M" X$ V( ~B. 结构体中第一个成员所需内存: J5 Z) @( w9 _; G
C. 各成员所需内存容量的最大值
0 X/ l% p/ B1 q& ~% N* i. iD. 结构体中最后一个成员所需内存) |7 b2 O; n# e& b) W
满分:3 分
. [0 q( B$ c/ n7 K: ]; }" u2 c2. 要打开一个已存在的非空文件“file”用于修改,选择正确的语句()3 Z* ?9 D1 Y$ b) m, f7 ~9 b
A. fp=fopen("file","r");: n- Z8 P: z* J2 {$ c
B. fp=fopen("file","w");
0 W& e( U1 Z0 m1 wC. fp=fopen("file","r+");
. i7 `" k( x: U N, d3 b. sD. fp=fopen("file","w+");
- u: P+ {" p! Q* Z+ b' X5 ^8 o 满分:3 分
; t3 m N% \. ~# v6 ]; J3. 若已定义int a[10],*p=a;不能表示a[1]地址的表达式是()
, k5 A% I) s, s5 A& I% x4 m5 AA. p+1$ a' H( _# X. ]* d
B. a+1) C r$ A7 V2 a8 d0 C
C. a++
5 |6 v, x( ~$ h3 M: g. z9 U( r5 PD. ++p
1 R; n$ x" J8 v' b1 D/ X. ]8 d3 g 满分:3 分8 V2 I4 Z+ t8 s8 u9 Y
4. 下程序运行后, main() { char *s="abcde"; s+=2; printf("%ld\n",s); } 输出结果是()4 d! J5 v& D7 R$ U# I
A. cde
6 e5 ?, _3 o h. a" T. _1 e" E, XB. 字符c的ASCII码值( }) y" X% K' m" X
C. 字符c的地址
/ p! s0 J l$ R4 X X" _* D pD. 出错; ]5 o( r7 e$ a) ^8 U G' e/ N
满分:3 分
' Y1 ]- R1 \+ l5. 以下程序: #define N 2 #define M N+2 #define CUBE(x) (x*x*x) #include "stdio.h" main( ) { int i=M; i=CUBE(i); printf("%d\n",i); } 的输出结果为(): [6 [* \0 ~/ m9 U& ?; o! u
A. 17
/ v& G/ p z; v1 ^( B: C6 T1 AB. 64
q( }& g4 Q: |* y& ^C. 125
5 K( W7 w* p% y0 ]D. 539 J8 P* d8 v/ p6 F/ v* |
满分:3 分6 W: D) T( \7 y$ @3 b) Y B
6. 以下程序 main( ) { int i=010,j=10,*pi,*pj; pi=&i; pj=&j; printf("%d,%d\n",*pi,*pj); } 的输出结果为()7 ~ e' a0 e) ]$ x
A. 10,10
# {( V) ~/ v2 L# L, L( nB. 8,10" L! L- G& E$ S4 M& {
C. 010,10" ^6 m- s! {8 q2 A
D. 8,8" V4 ^9 K% f- `' W
满分:3 分
0 \: [# f$ I2 R7. 以下叙述正确的是()2 z" m( p" j) Q
A. 任何存贮类型变量在未赋初值时,其值都是不确定的
. A' ?, J+ s5 s6 J4 }B. 将局部变量说明为static存贮类型,其生存期将得到延长8 A- c( g0 x0 {6 k( h
C. 将全局变量说明为static时,其作用域将被扩大$ ? d$ |4 D4 L2 N! T5 l- p2 U% M
D. 形参可以使用的存贮类型说明符与局部变量相同. I2 u9 s2 ]7 M2 c
满分:3 分% Q4 ~5 h6 G5 z
8. 已知职工记录描述如下, struct worker { int no; char name[20]; char sex; struct { int day; int month; int year;}birth; }; struct worker w; 设变量w中的“生日”是“1993年10月25日”,下列对“生日”的正确赋值方式是()
. v0 A0 i) {9 G4 ]+ L7 g( BA. day=25; month=10; year=1993;+ n& _3 ]0 v: ~4 n. E3 {2 A
B. w.birth.day=25; w.birth.month=10; w.birth.year=1993;
, Y" }8 U2 m8 d; u) BC. w.day=25; w.month=10; w.year=1993;
`+ c/ x0 u1 HD. birth.day=25; birth.month=10; birth.year=1993;5 C! t- H6 c B3 x7 \6 i
满分:3 分/ F6 Z+ {8 d& w/ p- l
9. 一个main(int a,char *argv[])函数带参数,可执行文件名为prog.exe,若命令行输入: prog abcd efg 123 则printf(“%d,%s\n”,a,argv[1]); 的结果是()
; w1 n# h; J; Z3 M$ ~A. 3,prog% _0 r7 d5 x+ ^% H% ?" E7 D
B. 4,prog) q1 X: c) b; f& b' h4 ?9 o
C. 3,abcd6 R1 U, D$ ^5 {2 S9 k
D. 4,abcd
2 }- [3 x) t: i L! C7 o/ J- O 满分:3 分
' j) J7 ?8 Q! x10. 在位运算中,操作数每右移一位,其结果相当于()
1 E; _# J$ S) U/ y- p* uA. 操作数乘以2 u b( W# t. b5 J
B. 操作数乘以4: Q0 s D/ x& r: b
C. 操作数除以2
0 ]4 Y( a4 t% T& R, e/ yD. 操作数除以4, L7 u+ p$ y$ K% N2 n' t: v
满分:3 分
- T. K4 f, W, {- l, I11. 已有定义:int i,a[10],*p;,则合法的赋值语句是()
" U8 y1 w& [, a- f$ U& lA. p=100;: t6 i& j' d+ X5 S' ?1 X2 j
B. p=a[5];/ x4 I# Z! z8 G" a- G( o9 Y
C. p=a[2]+2;
* d# e4 M6 @4 L; z: bD. p=a+2;
7 K- G& V* L1 G+ F 满分:3 分( p7 |2 T( b4 N7 o) {6 i) e
12. 设有如下定义: char *aa[2]={"abcd","ABCD"}; 则以下说法中正确的是()* t& s1 @) L n9 V3 B3 w7 K3 [
A. aa数组成元素的值分别是"abcd"和ABCD"
# h$ c4 |% ?, w1 S( A+ {& [B. aa是指针变量,它指向含有两个数组元素的字符型一维数组
" a: G, H8 K1 I, c9 l4 s! m! `C. aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
6 X7 d; {* b) l. w# i3 ?D. aa数组的两个元素中各自存放了字符'a'和'A'的地址
* L4 l) A6 Q- C5 h6 J 满分:3 分
" Q, \3 v! s- A8 V# _. [5 {& G13. 设有以下宏定义: #define H 30 #define LEN H+20 则执行赋值语句v=LEN*10;后,v的值是()
+ o! b6 b2 C5 T# W3 nA. 60
$ {! f" H9 c. i/ S8 O& M5 B5 c7 qB. 230- }$ [) N$ t' Y
C. 500; f4 X$ z! T" u/ Z" x" Q/ H
D. 0" Q5 x: `- X, l1 B; J* w; P
满分:3 分0 B) Q2 j( Q* l- [% X5 T! d2 p% t' O
14. 以下叙述中错误的是()+ ]* Z$ t0 m9 L* \0 Q- G! N
A. 二进制文件打开后可以先读文件的末尾,而顺序文件不可以
Y( k. |; p% o: B; r: qB. 在程序结束时,应当用fclose函数关闭已打开的文件
/ D* D0 f' q8 n( V3 B5 NC. 在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据; \% y. l3 p" Z6 U1 w \
D. 不可以用FILE定义指向二进制文件的文件指针
6 j) U3 `7 o5 ~; N 满分:3 分
S" i6 }6 P5 C0 S G$ l$ y15. 在下列程序段中, enum color { red,yellow,blue,green,white} c1; c1=white; 枚举变量 c1的值是()
( t _# O# B b* }A. 1
4 B# l) ?5 e M0 ?$ G% Q# AB. 4* ?" E) W* x% _! b" @3 u0 O
C. 5
/ S6 D, a: O3 yD. 62 J5 }' {7 ?% _9 S6 H, M% z. a
满分:3 分% O$ e( q+ |' v' F7 Y9 K
16. 有以下程序 main() { int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=&a[3], *q=p+2; printf("%d\n", *p + *q); } 程序运行后的输出结果是()- r2 N T1 Y7 M0 S# b$ M
A. 16
. s# H# j9 t$ p- r4 s/ F" Y3 gB. 10* R" v- t& t% d
C. 8
. [7 F& S& A& TD. 6
2 z8 Q j8 M3 T! D$ q- g7 J, O 满分:3 分! \0 I: a6 l- j! f
17. 下面选项中正确的赋值语句是(设 char a[5],*p=a;) ()
6 r+ O: \4 \5 T8 R. {A. p="abcd";" k Y0 v$ R# u! D) K
B. a="abcd";# E/ a" h8 x7 l( ?0 l
C. *p="abcd";
/ {- X1 ]4 N, ? ^D. *a="abcd";
1 u2 z) N. M2 l' [4 |5 } E 满分:3 分
9 N& u9 ?+ Z& _5 ~* W8 s: a) ]0 b: c18. 不正确的指针概念是()/ F& i3 b7 j: D* g7 p
A. 一个指针变量只能指向与其类型相同的变量
' j1 y- B/ V0 q7 W, Y8 P# Z: HB. 一个变量的地址称为该变量的指针0 W( x7 D+ \% `, Z
C. 只有同一类型变量的地址才能存放在指向该类型变量的指针变量之中
) e' N# E s4 B7 J5 gD. 指针变量可以赋任意整数,但不能赋浮点数
& c5 X0 ^0 m j0 Q# E 满分:3 分
9 h0 G' @5 _3 L% H( s4 ~19. 以下函数 int fun(char *s,char *t) { while((*s)&&(*t)&&(*s==*t)) t++,s++; return (*s-*t); } 的功能是()& x4 o1 s2 ?, ~* L, }8 T3 h8 I& w. X
A. 求字符串的长度
* ?& [1 Q& W" \- U5 {B. 比较两个字符串的大小
! S+ J3 q w( i) n( ]7 N* _. GC. 将字符串s复制到字符串t中2 [) b; c; r! Q8 d
D. 将字符串 s连接到字符串t后
% ^2 R* ]" C' O% t 满分:3 分: Y6 ]( V$ v9 b2 C) g
20. 有如下定义, struct { int n; char a[10]; float m; }x; 变量x占的字节数是()
' `& |: q7 X' k* AA. 10
) Z7 W* f& m' @* y% s, w EB. 8% N7 U3 [2 X/ V9 { D, y" i7 Z
C. 14
. M$ q3 A1 R6 Q; s/ G) WD. 16' Q" n, _, ?; w) Y0 u
满分:3 分 / C$ w U0 V9 I1 Z1 N- R6 }* c" ?
: l# m# {3 e- S8 D$ P! K6 o: `二、判断题(共 20 道试题,共 40 分。)V 1. 链表的每一个结点中必须要有一个结构体类型的指针变量用来存放下一个结点的首地址! s' c+ t* Q* r& X
A. 错误& F' N6 G f0 u" k. \7 y9 r
B. 正确6 \6 S0 r. R& h* d' ^" t
满分:2 分& U! V' [8 w, I# g+ R5 b4 {
2. puts函数的作用是将一个字符串输出到显示器。
8 d6 n# B* q2 ~7 L# gA. 错误
- |- Y% x( ~% W7 n. `6 g& b9 A* qB. 正确; {2 |) ]5 }, l0 l X/ C: l! R) ^
满分:2 分$ @$ s9 M. c( W+ R- ]0 @9 B! x
3. C语言中的构造数据类型包括数组、集合和结构体类型。
/ g7 O# r5 M% n' }1 \5 x8 r- D; ]A. 错误
# p# l9 M! z5 x" n/ F9 o. CB. 正确6 F# t2 K+ E1 c. O( I
满分:2 分
+ B& \7 j: Y) g+ t7 S0 Q4. 如果形参与实参的类型不一致,则以实参类型为准。
5 L! i: Q h- W2 J- wA. 错误% b2 q( W G) u0 a2 w; u: c
B. 正确0 r8 d9 f/ A: I2 @' i6 C6 B
满分:2 分
! q2 v1 V1 \% }' z5. 结构体类型的各成员可以有不同的类型。5 r0 V2 {* Z" O. m9 E: j
A. 错误
* M) a m0 Q. F Y0 [0 fB. 正确. y% Q* M0 P. e5 |5 }9 m6 V
满分:2 分3 G$ e* |/ l5 I N* ]- Z" g k
6. C语言规定数组元素的下标从0开始。$ [ t( n) \' S# I
A. 错误
3 @4 |( g) E: W" bB. 正确" ^. {0 M C( S7 h
满分:2 分
V7 W. N" h5 ~. G* |1 t7. 二维数组中元素排列的顺序是:按行存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。
' M2 i, D+ ]; `1 H! y: E4 ]- O, ^A. 错误
: q7 _* A( I# x9 b6 y uB. 正确! H% |$ k( u3 h" ~/ H
满分:2 分
) y7 P9 c2 G q E8. 无返回值的函数,在调用之前一定不要说明。' W- B5 X! y; o: k
A. 错误" p6 ^; ?- W9 Z1 e
B. 正确
! c/ z. O' A9 K. j9 z9 ?8 R+ I9 o( n 满分:2 分- u& H$ }/ l2 q) L p
9. 在C语言中对文件操作必须先关闭当前文件,然后再打开一个新文件。7 Z/ Y" l: s4 s8 U4 D. ~
A. 错误' x! A+ N3 j+ D7 F F
B. 正确3 v- Z, U2 n, B0 X% c/ i8 U+ E
满分:2 分; E' T* G) K% H
10. 如果一个函数只能被本文件调用而不能被其它文件调用,则称该函数为内部函数。0 e) v- ]1 h. c7 W# y$ \( T" W. F
A. 错误
0 b" j, R, g e5 ] O- X# ]' JB. 正确2 g. m8 J& m* W P: \
满分:2 分, W, l( h0 D' c3 E* ^# j
11. #define和printf都是C语句。
5 e7 f9 s3 d& S0 i6 H1 p/ U; S) uA. 错误
5 |/ x$ w3 ]7 e8 W1 B4 `B. 正确7 X9 L; T; t2 j* {* j3 t% l
满分:2 分
1 `. h8 G/ X6 ~& I+ h$ o! H5 I5 Q12. C语言中的文件在操作完毕以后,用feof()来关闭。
" r7 X+ S0 P- h; M9 l. ?A. 错误
5 X. s B n* GB. 正确
: @6 U' N/ z. u- [* d+ l 满分:2 分
' z/ @" F) _2 D, r* T13. switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。6 Y0 P0 a9 I% P# k5 g
A. 错误
; |3 w9 c; x1 g# yB. 正确
$ b3 {3 Z U& R 满分:2 分 P3 A+ d7 s8 j$ v
14. 若有形参定义:int a[10];则a++是合法的表达式。
2 T1 J2 b% U8 s. J& `7 E/ NA. 错误
" A. T# K$ f3 ` j) i! Z* m/ q- HB. 正确6 e5 F; Q) @5 b- q0 a
满分:2 分9 w7 Y+ [: s. u' X6 _
15. 空类型是C语言的一种数据类型。+ m* R& _( k e; k# Y$ o
A. 错误 S( Y/ {3 w6 q2 y1 E4 O% F6 i
B. 正确
) F. u0 E$ ]5 h! G$ {; y 满分:2 分
0 M; {1 i( T# W/ T+ k# q16. 利用fclose函数关闭已打开的文件。' r6 o# m0 m" q' I6 K+ O$ D3 L
A. 错误
* C/ v% t8 J1 d9 h9 n1 sB. 正确
# y. e- V3 {" f( {& k% Z6 y5 ^5 ` 满分:2 分$ q: m7 A" W4 R4 j- g H: o
17. 在C语言中定义一个文件指针的方法为:FILE *fp; 。
5 T! w0 F1 I3 ~/ i; A! L) \9 \A. 错误( j# a ~ y8 f# e! X
B. 正确
% Z7 E+ L; I' s { 满分:2 分. s6 R6 F. a. M) x: A& |
18. 结构可以作为数组的元素 ,数组也可以作为结构的成员。
7 R( E+ n* {0 ]# T/ \8 @) AA. 错误
" H G% }% Y' P4 VB. 正确
; Z+ t1 K3 `+ O" C 满分:2 分1 [: O1 R6 D, W& Y# ~) I
19. 任何两个毫无关系的指针作相减运算是没有意义的。
+ n' F$ o% h+ k9 GA. 错误
& f% g4 f' R% V8 JB. 正确
' H( y5 Q8 z+ O; k* ~( P+ E& W 满分:2 分) A1 S J6 O4 u4 H, h, f6 Y
20. 每条链表都有一个头指针,用于指向链表中的第一个结点。
* v$ l: v/ |- xA. 错误
" h3 L2 p ?, ?B. 正确2 @% c7 k$ L% X1 M; v9 o
满分:2 分 ) { O2 I, h& \0 o! w G
! T; s4 L5 Y: b6 u- h7 W' x9 n$ R" @
谋学网(www.mouxue.com)是国内最专业的奥鹏作业资料,奥鹏离线作业资料及奥鹏毕业论文辅导型网站,主要提供奥鹏中医大、大工、东财、北语、北航、川大、南开等奥鹏作业资料辅导,致力打造中国最专业的远程教育辅导社区。 |
|