南开c语言程序设计作业答案,南开19春学期(1709、1803、1809、1903)《C语言程序设计》在......

南开19春学期(1709、1803、1809、1903)《C语言程序设计》在线作业: o. L% P9 P. }; G

1.[单选题]以下对一维整型数组 a 的正确说明是( )

0 e+ G2 [# x( p8 |; qA.int a(10) ;! W9 H6 p7 }) p) [8 |& o1 @5 K( N

B.int n=10,a[n];

# L$ m: e4 ^2 i& r0 H: j0 _+ uC.int n;

& G& m7 Q- ^9 z2 J  Y* s- K" ^" @5 JD.define SIZE 10      int a[SIZE];( b; v/ ?; q: f& m2 j

正确答案:——D——

. ~5 c$ t7 F- G2 \/ I2.[单选题]fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( )& }' K/ ?5 L% I' n7 x/ C

A.只写% `4 z- Q0 U6 I& w8 m6 Y

B.追加. Y% z4 E+ D% \; w8 m) @2 F

C.读或读写8 q  M! h+ M1 l* h+ p  R0 `4 W( B9 S# j

D.答案B和C都正确

6 p7 L) D2 a- C1 c' W正确答案:——D——

* u6 M  a# _2 j; I  H& ^/ ~$ a3.[单选题]当不能正确执行文件关闭操作时,fclose函数的返回值是( )。G0 K  z/ L; D3 V& I) v

A.-1

) K0 \% y3 L3 eB.EOF

4 u! P6 J. c' ?C.TRUE3 K3 t. b4 z( Z# [

D.1

* m4 Z" v. {0 K. I正确答案:——B——5 v6 M) t' A% ?! U' @

4.[单选题]下面4个选项中,均是不合法的用户标识符的选项是( )

8 p* I/ I9 @- N, E: @A.A  P_0  do

6 i% ?+ D% V+ i" B( B4 Y+ vB.float  a0  _A, a, j2 T. k7 ~$ X) }) k) w

C.b-a  123  int6 W3 W7 E( [+ h9 I$ X

D._123  temp  INT

* s/ c* W; t6 J$ z: }) _' A正确答案:————4 U3 C5 q% a8 w5 Y+ u0 j

5.[单选题]下列关于数组的特征错误的是( )。) o! N3 x- y+ h" k' h" A+ Q

A.先定义后使用

0 ]2 C' `$ m% }" U" c8 o/ m$ aB.可以有多维+ c; Q3 [$ |3 T2 C# \7 u

C.定义数组长度时可以用常量或变量- r! Z6 z& S: n. i$ n) G+ L+ S

D.可以作参数传递

1 q, T8 ~. l3 G1 D正确答案:————

0 @) c" V& y6 K! q6.[单选题]一个源程序文件由一个或多个什么组成( )

. _( G5 ?$ f- K+ ^1 {# jA.语句

& G9 Q+ A% \9 @5 |* u9 K  A2 O6 PB.函数

0 V8 W2 {& G  N% b+ k! gC.程序块

7 S. x4 G+ a) iD.子程序# i/ J5 ~: r! j- q# g0 D1 W

正确答案:————; J( I+ O+ D' p9 L, y4 n

7.[单选题]在C语言中,要求运算数必须是整型的运算符是( )。6 N2 n0 d1 P; A: R4 @! v0 B+ D

A./

( p$ s( O+ {& ~- tB.&&9 }8 w7 i$ n' V2 D3 S

C.!=

2 L/ C) t% s% w/ v% c1 rD.%# ?4 d* t& J+ A

正确答案:————

+ |. G) f% H) f8 h; c8.[单选题]struct person {char name[9]; int age;}; struct person class[10]={"John",17,"Paul",19,"Mary"18,"adam",16}; 根据上面的定义,能打印出字母M的语句是( )。

( s6 ?. ^6 n3 U% ZA.printf("%c\n",class[3].name);, H1 e# a+ D: j; s+ N3 n( W3 H

B.printf("%c\n",class[3].name[1]);7 I! X# X# ?- M# \

C.printf("%c\n",class[2].name[1]);

2 v& |6 ?: o$ ^: O0 r, N5 d! `9 R6 [D.printf("%c\n",class[2].name[0])

( C/ K5 o' _; c正确答案:————

2 A% H8 R* f5 m% }4 _9.[单选题]若有以下定义语句:int a[10]={1,2,3,4,5,6,7,8,9,10};

- p3 ^" o2 p! V, G: W则下列哪个是对该数组元素的正确引用(  )' g& ]) {4 R% o+ A, V+ X! _

A.a[10]

2 k8 t) W6 p9 f  rB.a[a[3]-5]

' }# }5 b1 g" g- Y- y- d+ n9 }9 f' _C.a[a[9]]

7 _/ Q9 c3 T5 p0 ^D.a[a[4]+4]

- F2 }2 m& @5 ~& t正确答案:————4 V9 d9 F1 O2 B0 }) n% E; l

10.[单选题]已知各变量的类型说明如下:0 O( _- [1 j# B: N- p( {8 X

int i=8,k,a,b;

) Q( e, G5 j0 c+ S( Tunsigned long w=5;

7 V8 F9 U# j" D0 V  Cdouble x=1.42,y=5.2;

5 w, [; ~. D* A则以下符合C语言语法的表达式是:- `! T6 `2 i% g9 n* j, k

A.a十=a一=(b= 4)*(a=3)

% W0 a& W: q8 R0 O; O5 a. o3 W) MB.a=a*3=2

' a, {  [8 w) s4 G) v* j- X" Q7 L8 hC.x%(一3)( L! G/ s8 ?$ T

D.y=f1oat(i)

! @& i/ W; b0 a& y8 c# x. O# ]正确答案:————3 s: Z$ @2 N/ X, a

11.[单选题]x=-2; y=-1; if(x!=0)   if(x>0) y=1; else y=0; 该程序段的输出结果为( )。3 a7 S( p3 X/ m* R

A.1

0 v* e8 ^! N$ M$ k5 f; E& KB.0

7 y/ @6 v1 Y3 k1 R+ J4 FC.-1

# ]# K+ k/ }3 CD.不确定% J  c3 W- b9 Q8 ]& k' z; J1 v

正确答案:————) [, |+ ~$ {+ r# c

12.[单选题]若定义语句:int a=7;float x=2.5;y=4. 7; 则表达式x+a%3*(int)(x+y)%2/4的值是( )

7 D  b) K+ ~7 UA.2.500000

( V; k+ V6 r% |4 f' Z& v5 n  iB.2.750000# r  k: u& \$ |- P: W) y

C.3.500000

' H7 M  |/ C4 v* }1 X, B7 `D.0.000000

# A/ @6 V, N/ \! u) d正确答案:————

. Y, \3 o  p& ?. p1 f! {( S13.[单选题]若有以下定义语句 union data {int l; char c; float f;}a; int n;则以下语句正确的是( )$ B" y  ]4 M6 N

A.a=5;

* F- X* ?: v- J3 ]B.a={2,'a',1.2};1 z1 g+ z9 B+ Z% [$ J% n$ L

C.printf("%d\n",a.l);

, |7 m' w# d- J3 b: r" `) W! G- _( \D.n=a;

( b$ c. K9 Y5 X& f- d. B, M正确答案:————

5 Z% a; P* z5 g* S' Z7 F14.[单选题]C语言中规定,if语句的嵌套结构中,else总是与( )配对

2 s$ X4 z- W% @A.与最近的if 配套

4 S0 R7 A! P- i+ _; `B.与第一个if 配套

6 p$ t/ S! w2 a+ ?5 SC.按缩进位置相同的if配套: ~2 V2 S) k; [% Q' R6 l

D.与最近的且尚未配对的if 配套

0 l, T7 b! C: K4 C8 J% \  h* A正确答案:————

; i1 ^: B5 {0 Y( {2 \) [+ I" E15.[单选题]main( )  {int n=4;   while(n)printf("%d ",--n);  } 以上程序的输出结果是( )。& ^/ z4 V% \- h6 {" H

A.2 0

1 m; M" N4 q* O7 p0 \- p8 TB.3 1: A2 |" J) l" m0 \- L( }+ M

C.3 2 1 0/ c. D* F- f6 v5 j! u

D.2 1 0

1 Z* j( D4 t( u( E! P正确答案:————2 ~: P, g  R9 Q: l4 O- Y" L

16.[单选题]若有定义char str[]= “very good”,则str的长度为( )/ S, Z& G$ ?" F+ L6 a$ `

A.82 l0 Y* R9 q  j& k9 [

B.94 n% l: y4 U  J) O& ^

C.10

% Y2 s( H+ C" J% WD.11

2 I: f5 ?% `7 s: ^正确答案:————' L( \: n  l% e4 ^0 [8 n6 v8 \6 S0 ^

17.[单选题]判断字符串a是否大于b,应当使用( )3 Y5 |7 i7 ~& X  N# G; d

A.if (a>b)

' R$ K; h) y3 O2 lB.if (strcmp(a,b))* u/ W9 ^# G) ?

C.if (strcmp(b,a)>0)0 _, D) p$ U! A; c( s- @" k$ f& V

D.if (strcmp(a,b)>0)c3 B3 l# E# F3 _; z% f" B' d

正确答案:————8 m: s/ ?& @% |& t; D

18.[单选题]main() {struct date {int year,month,day;}today; printf("%d\n",sizeof(struct date));} 以上程序的运行结果是( )* M: `2 x+ D  a! N! ^

A.65 ~) I' Q# {  n* s2 I

B.8

& `' S  |' _. wC.10" c. f* \, q2 z, P5 f

D.123 P$ C7 s# }  u6 c/ E; X& I

正确答案:————

8 R# |( f" [) B& b( j. d4 o/ a19.[单选题]以下符合C语言语法的赋值表达式是( )

8 G2 _* c0 n7 X' rA.d=9+e+f=d+9

' \- Y4 W$ Y0 XB.d=9+e,f=d+9+ f3 V8 w6 C1 T0 L: J; }

C.d=9十e,e++,d十9

. u+ H$ b2 O+ @  D5 b# m& g  BD.d=9十e++=d十7' Q9 R& C9 A( {& B

正确答案:————* ^7 k" a0 G! v+ Y

20.[单选题]若已有定义int x=2; int *p=&x;则*p的值为( )

( x1 W1 l7 @" g# R! ^A.2

}/ s2 M1 Z% a5 oB.&x: |7 }8 p3 a+ g) A+ p7 o; {: N

C.*x) J! i7 I: Y9 e

D.&p8 F6 ]% I/ T# y3 o4 G

正确答案:————& I8 M& P5 v* V

21.[单选题]设有如下程序 # include<stdio.h> main() {  char ch1='A',ch2='a';  printf("%c\n",(ch1,ch2)); } 则下列叙述正确的为( )

" X# l9 ?, g, Z$ U4 RA.程序的输出结果为大写字母A

8 m3 y# T8 p% T# P5 G# i2 }7 }B.程序的输出结果为小写字母a

) `, B2 U% E' Y% fC.运行时产生错误信息b! V2 H4 e; d& S' R3 f" Y% t

D.格式说明符的个数少于输出项的个数,编译出错1 Z" F0 Q7 l) i2 e2 z+ v

正确答案:————

. F( H( x( e# ^2 }  F* }7 {22.[单选题]C语言结构体类型变量在程序执行期间( )。

4 j  h6 V  i1 F8 @& CA.所有成员一直驻留在内存中

$ m1 ~+ N% H2 SB.只有一个成员驻留在内存中

. g! z$ ^0 X" n5 b( W1 J0 ?/ `; IC.部分成员驻留在内存中9 e3 z" }9 Z0 @: }2 _

D.没有成员驻留在内存中9 y) R/ `- ^1 g3 x" U! H6 n

正确答案:————4 ?0 J5 l  o  V9 `

23.[单选题]以下对C语言中共用体类型数据的叙述正确的是( )

+ |- C: r* Y& }/ KA.可以对共用体变量名直接赋值5 {  \% S# S' m& }) d) o

B.一个共用体变量中可以同时存放其所有成员

8 H- h8 l. v* E+ O* XC.一个共用体变量中不能同时存放其所有成员

: F, S$ `8 R# YD.共用体类型定义中不能出现结构体类型的成员4 m! ~' z- D* ]. k

正确答案:————

, M. [+ c* _' T$ V7 K: L24.[单选题]下面正确的字符常量是( )

- a6 X0 e! m* ~/ Y4 n* ?9 |1 DA."c"

/ s- b( L( w6 `2 ], V" `B."\\"

8 I; n8 \3 Y  j/ q& x, F$ fC.'W'

6 p* C2 R1 O9 N) E- s0 O  q. l1 _D.''(中间没有空格)

# j+ x1 o- `1 T3 P- M正确答案:————

' Y" G& L+ |+ p, M: _25.[单选题]设有以下说明语句 struct stu {int a;float b;}stutype; 则以下叙述不正确的是( )3 P+ B1 U" B' }* t+ l

A.stutype 是用户定义的结构体类型名- L- x7 x' V+ j# J7 |8 y

B.a 和 b 都是结构体成员名+ N; X! z7 [- g  m" S

C.struct 是结构体类型的关键字6 y0 X2 E% o( Q) ~

D.struct stu 是用户定义的结构体类型

0 ^1 ]- ?  K6 X3 l+ j  Y$ H正确答案:————

4 E( y" R& t& `( G# _1 Q- W26.[单选题]x=-1;  do    { x=x*x; }  while (x); 以上程序段( )3 }* p' E% n$ C8 |

A.是死循环

. P9 U+ r* Y; T) s/ L+ E% K' GB.循环执行2次

, m& P/ N  J# Q) F0 u1 c$ U; RC.循环执行1次5 a' s& f  m! r

D.有语法错误2 q- ]. z4 i" S& N: I# s8 v

正确答案:————

( @7 j; W7 p( C& g- g27.[单选题]main() {int x=2,y=-1,z=2;  if(x<y)    if(y<0) z=0;    else z+=1;  printf("%d\n",z); } 以上程序的输出结果为( )。9 ~0 g+ P& c/ C) K  L6 N9 i

A.3

; z* D6 u  p& l$ wB.2

9 k8 P, Z4 Y8 [/ L' O+ kC.1

9 K1 K# y& O7 @" x  @' I" i3 ?0 JD.0& i+ a( @7 |$ W# }

正确答案:————0 E+ h( h: d' o( l0 F# N! E, \* ^

28.[单选题]int k=1;  while (k<=10); 上述语句执行后,变量k的值是( )。( u7 `9 [* O$ |1 p; G/ p' w4 k

A.10+ _+ }$ [- N2 |) m  d

B.11

+ |1 ?0 V' }  D$ j: s& d' m/ O; I  ?C.93 E: M- D$ {, {# _( K

D.无限循环,值不定( ^6 i  R2 C7 K* y8 e! K4 g

正确答案:————

7 V7 \" _) i+ Z% b29.[单选题]从用户使用的角度看,函数有两种,它们是( )

! w8 x/ x% h/ N7 y; iA.库函数和用户自定义函数

# Y4 A0 M8 Z" _8 {) b% }* TB.库函数和主函数

& D0 t" P- O, I/ N$ X( ?0 hC.用户自定义函数和主函数

, C! f6 A. L5 wD.主函数和子函数9 B2 s/ K& t8 o

正确答案:————3 A, p( P. g2 n6 h# u; m" M

30.[单选题]C程序的执行从哪里开始( )5 h9 Z) y6 f, m6 s8 ^( j$ v

A.第一条语句

. C/ O  k  u$ K: x- T- P! _( GB.第一个函数

) _& h' r4 X6 R8 D4 B8 JC.最后一个函数" n  X: [( B$ e- u$ m0 E$ K1 {

D.主函数

* H( _! G3 ^$ Z2 |- h1 _正确答案:————, K8 b9 I. s& w7 D4 J, @6 J  E2 ^

31.[单选题]若调用fputc函数输出字符成功,则其返回值是( )

2 @) I( B) |2 N$ x- b" [6 SA.EOF

! l( _+ f" u' v6 {B.17 f. X( Y* O5 d5 U5 H+ N2 ?2 Q

C.0

. r5 w) [! [& b# x# VD.输出的字符. Y" t' }+ i0 W6 B7 E  r

正确答案:————8 ]' J. N% k" Y4 P  e( u) O: X

32.[单选题]若执行fopen函数时发生错误,则函数的返回值是( )( K8 G5 ?2 H2 t6 k: [

A.地址值

" d0 U3 x% J+ }0 iB.null; P, C$ O  A, Q% P1 k

C.1

4 o# L4 s; e5 k; @6 w6 }6 U' R9 KD.EOFw* b, f  i0 t

正确答案:————# m# \) a7 Q0 q2 Y( u! E' e- J! `

33.[单选题]在C语言中,int、char和short三种类型的数据在内存中所占用的字节数( )。9 P+ X/ T. A7 Z3 h

A.由用户自己定义5 @  e. z) X2 x8 Y

B.均为2个字节" Z8 [: l. _% P0 d" R

C.是任意的* j! G0 V1 d8 ^  \, h3 N( e* _

D.由所用机器的机器字长决定

# N' `) j$ ]8 o" U! A正确答案:————

% D) o' k4 d2 Y. {) P) m0 m34.[单选题]若已有定义int x;下列说明指针变量p指向x的正确语句是( )

! r" k+ b  o* k& K0 v+ aA.int p=&x;

6 Q9 j0 f, x! H( u$ c/ ]3 {B.int *p=&x;

; P* p5 s) M& ?+ f' jC.int p=x;

+ F" |7 g# }5 {$ Y3 B" P+ h' Y' [# zD.int *p=x;# u, ^8 H9 ]" I. K7 ?9 w

正确答案:————' C( e1 ]" G- Q+ G

35.[单选题]在 C 语言中,引用数组元素时,其数组下标的数据类型允许是( )。

# ~) `1 G% T. V; }% b8 TA.整型常量

7 w8 f2 N# m& v' F, }B.整型表达式

v7 [1 ~+ m) {9 \8 z  {C.整型常量或整型表达式0 L$ J$ ]; V- Y& l1 I7 S

D.任何类型的表达式

$ L; \& q/ g$ e$ [* I3 \. G正确答案:————

8 ]7 g4 O8 G5 o. E. Z36.[单选题]下列哪个是读写文件出错检测函数( )。

+ l$ h8 Q8 s% ]A.ferror

. s+ A. A# |8 U3 F/ |' QB.clearerr

' A* J  I/ v/ [" |1 _; l# nC.feofd( a( s' X7 b5 L# k9 I0 x& o

D.fwrite

5 X: E' k/ e! B9 h" r; q7 g正确答案:————t* y# d$ n( N# O5 L/ F

37.[单选题]for (i=2; i==0; ) printf(“%d” , i--) ; 以上程序段的循环次数是( ); d. p/ l# |) P7 ?& k9 f2 _% M

A.2次1 R' O1 O. Q: c4 ]) g& u" y+ f

B.无限次. g4 i8 E6 s5 V; K; q  V

C.0次f8 b1 N1 q( a( i9 V

D.1 次

) J% m+ F6 U8 ]- z+ X6 u' `正确答案:————! z: L: W% f5 w7 f$ j1 `

38.[单选题]main() { int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\n”,x+y+z); } 输入数据的形式是25,13,10<回车>,则程序的输出结果是( )5 m) q/ h+ x& B8 B8 h

A.x+y+z=48

1 ~. [& N  e- ]! Q. N+ lB.x+y+z=35

3 b" `9 V9 a4 qC.x+z=35

8 v3 j) C. u4 s1 ^+ ZD.不确定值6 M# }: U4 c. F" l3 E( {! g

正确答案:————% |; h2 v* R5 l8 w

39.[单选题]如果在C语言中一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为( )。$ e5 P; D3 _$ Z% P. E6 O. u6 }& z

A.0~255

! n/ T- `- n/ d7 u4 ?2 ^B.0~32 7676 m- w/ S2 X0 x, x% c1 r

C.0~65 535: y* S$ C* ?9 w- f5 T0 D' |- ^

D.0~2 147 483 647

) v! f" B6 J# _: e: g* B6 {: l5 r9 M正确答案:————3 c! U1 N. D! Q, w" Z

40.[单选题]putchar函数可以向终端输出一个:" d" J) d+ U' x# P% \! [  S

A.整型变量表达式值' F- v. z" c) k6 U! r7 [6 _* z

B.实型变量值

: j3 [4 g1 X& b' bC.字符串0 m0 H, P% w2 L5 ^5 J9 q

D.字符或字符型变量值& c5 x. _% ~3 p' Q5 w

正确答案:————

: G4 |% K* X3 v6 e41.[判断题]字符型数据和整数之间是不可以通用的。(  )# z, Z  m' M5 v/ F# c- [

A.错误% ~# l3 Y; W# l# k1 o+ F( L# c4 \

B.正确/ Q/ p- ]: l: ~! I& a8 S) [

正确答案:————: e* r+ U( O1 a: ]4 r- y

42.[判断题]赋值表达式c=b=a=3是错误的。(  )

" [$ V' B; M4 W0 e4 Z6 |- ]  JA.错误7 v+ ]0 d8 t" F% F

B.正确: [8 X& o2 @# |

正确答案:————i4 ~( l+ k( ]& r1 Z

43.[判断题]C语言中的标识符以字母或下划线开头,可跟任何字符。(  )

3 V% k5 ~1 _) ~( o  [A.错误

/ S2 {: d9 Y! _B.正确

% P: R( q: i& c正确答案:————

& U1 @" ]) D: A( W+ B$ J! }44.[判断题]对整型常量可进行自加或自减运算,而对变量或表达式不可以。(  ). d3 G- q) N7 [( e

A.错误

% E# _* r8 [( {# i2 UB.正确: ]- C8 S1 T4 G' [8 H: F2 Q' d1 Z3 U

正确答案:————

& r3 c$ z3 X) e* I8 i! a5 J45.[判断题]C语言中没有依存于硬件的I/O语句。(  )& t: q, o% p- ~" c& M9 i

A.错误

4 Z+ t) a+ w) \8 C4 YB.正确

2 i* I+ |. {1 N' }  }  g正确答案:————

# U5 |; C4 p" A46.[判断题]对C语言中用到的任何一个变量都要规定其类型。(  )K& @; x& t- e$ I

A.错误

. A7 O5 K  S9 EB.正确9 o* @0 r( {- E, s

正确答案:————

, d. y0 Y  b* P47.[判断题]PI可作为标识符使用。(  )

, x4 f7 C: _! a* h. uA.错误

1 @4 [# l0 h* `  \: kB.正确

* s' f, z& G+ k正确答案:————, G2 w7 q) ]2 u0 T& \

48.[判断题]在Visual C中,实型数据在内存中占4个字节。(  )

6 @& L6 W! L9 _2 y# d* y5 f7 MA.错误

3 q* n8 U( P0 d0 ]* fB.正确/ n# R' K+ @. f

正确答案:————) w1 d" ^6 r0 P+ @. R9 V% o& e

49.[判断题]在Turbo C++中,字符型数据在内存中占1个字节。(  )

4 I9 g& |. L* M, t; C( t/ eA.错误

0 g: f" C! I) f9 o3 p* Y' kB.正确5 M; }5 h5 y5 e( }5 s3 k) n

正确答案:————

3 N" V' s9 B: R( j% X" Y* O: B50.[判断题]C语言采用解释方式将源程序转换为二进制的目标代码。(  )6 t! n& k! ?7 _! C! c

A.错误, P  t2 t4 o6 j

B.正确

: L, b5 }8 d: n4 E正确答案:————

7 w4 k9 a( t0 p( A7 K! L7 h6 E/ B  \$ e9 B+ Z

( T+ T8 I$ m* R2 _, l+ K

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值