川农c语言考试题库,川农网院《C语言》期末机考

《C语言》期末机考

% O: D: v' A( v" {7 A3 w1.[单选题] 已定义以下函数, b0 H- c1 C* w! {% ^4 _# T$ r

int fun( int  *p)

9 n! Q0 g* _/ w; W( ]% K* F3 t' e{  return  *p;  }

7 Y* {8 Q8 r+ P; wfun函数返回值是 (    ); N3 d* G+ o; o% g4 P, }0 t

A.形参p中存放的值

$ [( [+ M% m; z0 g; U$ G    B.一个整数

( N# f5 N" _2 H- y' X* `    C.不确定的值2 q) K* F6 E. W1 i$ I! A+ o( v) D( A

D.形参p的地址值

2 M; B$ e6 Z0 M7 V' ?* [  I, U4 G0 i    答:——B——

& g) |' S# j% x" r. I: R! [2.[单选题] 假定所有变量均已正确说明,下列程序段运行后x的值是:
a=b=c=0;x=35;
if(!a)x--;
else if(b);
if(c)x=3;
else x=4;

. x3 p+ a) f. s( ^; _6 b, Q    A.34Z. ^+ L# I5 Q' v2 J; U

B.35

. ^6 \4 \2 `1 F/ x' x- q5 ?4 E    C.46 {  b# |9 Q5 x0 r2 N

D.3" u, f# ~8 `3 l6 A! N' C8 k( w/ t! l" N" K+ }

答:————

, u4 C  C) p9 ?# r# s3.[单选题] 在宏定义 #define PI? 3.14159中,用宏名PI代替一个:5 K$ n/ V) Z! |; o

A.字符串1 W3 I/ S3 K, a: p. n

B.双精度数- u$ I$ S& A3 J$ U

C.单精度数( n6 B3 e  ]/ i7 e, H: z

D.常量' f! i8 ^, d3 O, P: y6 D

答:————1 h8 I2 C% W5 W4 a0 V' U$ ^; m

4.[单选题] 以下程序的输出结果是:
#include
main(? )
{??? char??? *p1,*p2,str[50]="ABCDEFG";
p1="abcd";????? p2="efgh";
strcpy(str+1,p2+1);??? strcpy(str+3,p1+3);
printf("%s",str);
}

/ D: u& S$ R; c3 |: p( l0 U* U    A.Afgd

7 }# V2 G* R/ e: Q! h# ?    B.Abfhd" D# V$ v: u# i. {; L

C.AfghdEFG* z5 H# f' `. c

D.Afghd4 k9 G. p, Z  p$ y& H. N

答:————

- @) x1 P- K% N) U' B7 s* C5.[单选题] 在C语言中,合法的长整型常数是:

9 \2 J/ u8 E: E! }7 S    A.2.1869e10

+ t1 A5 ]3 l; f    B.4962710

$ }) b  G! [2 i2 U4 f    C.0.054838743

7 m- J( o' x& S* S2 k: i    D.0L

( g* N8 h1 E# D& C6 `2 y    答:————A( }0 h9 O. q9 P1 |9 H

6.[单选题] 若以下程序所生成的可执行文件名为filel.exe;当打入以下命令执行该程序时;
FILEL? CHINA? BEIJING? SHANGHAI
程序的输出结果是:
main(int argc,char *argv[])
{?? while(argc-->0)
{??? ++argv;printf("%s? ",*argv);}
}( A- G" Z5 n9 Q9 d9 w5 e- ?

A.CHINA BEIJING SHANGHAI

* t- u" C$ R$ O    B.FILEL CHINA BEIJING6 O& E# }' [% ]

C.F C B

1 d8 d4 M" A% F0 ]& L% k    D.C B S

) |- c  [$ I- f# o* \    答:————9 d# W/ N% H8 f# p+ z0 q7 J6 o2 D

7.[单选题] 能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假“的表达式是_______。

& S& E& [" G: F6 x5 @3 w    A.(x>=1) || (x<=10) || (x>=200) || (x<=210)

4 }4 U* q) @( ?# t' @+ E$ {/ v    B.(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)

* X# {; j" ^# E* M4 x' }* C    C.(x>=1)&&(x<=10) || (x>=200)&&(x<=210)

8 I  A- t9 h8 B5 e% c( r    D.(x>=1) || (x<=10)&&(x>=200) || (x<=210); t0 j: S% B  q! u

答:————

! x: ~% O. n& L4 E1 B7 a$ e, }. K8.[单选题] 在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则(    )6 }  R; A4 A6 [+ D3 J: V: v1 R

A.称为函数的循环调用

! n- I; `9 S9 s/ e7 g& b    B.称为函数的间接递归调用! q* `  d' V2 i$ k( E

C.称为函数的直接递归调用

1 d0 _. o4 N1 N/ S$ Y" G    D.C语言中不允许这样的递归调用

4 J) k* O# r" ~. L    答:————

7 f8 O( Q4 K, q9.[单选题] 请选出以下语句的输出结果:
printf("%d\n",strlen("\t\"\065\xff\n"));' \1 H2 w8 U! q% S2 d4 ^

A.输出项不合法,无正常输出0 w4 u; H$ m' F! F+ V- `* T

B.8

7 Y' W( W, ~5 C7 N+ K, P, c    C.14

0 w( W6 [/ t$ N  T    D.5

2 h- ^$ v8 G0 I# W    答:————

4 M; N/ W% P4 E2 Z2 w- ~10.[单选题] 不能把字符串:Hello!赋给数组b的语句是:

/ ]. r8 I. Z. N    A.char b[10];b="Hello!";

$ _# y6 L' H* R7 b7 B9 q0 m    B.char b[10]="Hello!";4 N5 o  ?6 N& y5 j" Y3 h7 f

C.char b[10]={'H','e','l','l','o','!'};. S0 q2 S- A8 C% E

D.char b[10];strcpy(b,"Hello!");7 z# Y" F$ n8 r* P

答:————! \) m+ `9 F& `6 p. l

11.[单选题] 设有如下程序 :
#include<stdio.h>
main()
{ int **k, *j, i=100;
j=&i;?? k=&j;
printf("%d\n", **k);
}
上面程序的输出结果是

7 m2 d2 E& _; {, X  [1 f& {    A.100u- [/ r& i( X* T2 P6 u

B.运行错误* h' n. i# _) k& C

C.j的地址" ], y" j2 ~2 k' G, \

D.i的地址

6 K1 |7 k% U! h% U. p& O    答:————

2 B9 I/ x; E1 s- f; r0 G+ c12.[单选题] 以下关于逻辑运算符两侧运算对象的叙述中正确的是(    )。

8 z1 J2 F" e8 s4 s    A.只能是整数0或非0整数1 E9 w9 e  L6 k" j6 u

B.可以是任意合法的表达式

% P) u. V4 m! D9 A* g, I7 \8 P    C.只能是整数0或1. h, g, o4 x- j

D.可以是结构体类型的数据1 d6 [1 J7 e3 J) r

答:————/ @8 u5 B! R  |8 O( v

13.[单选题] 执行以下程序后,b的值为__??? ___。
main()
{ int a, b, k=4, m=6, *p1=&k, *p2=&m;
a=p1= =&m;
b=(-*p1) / (*p2)+7;
printf("a=%d", a);
printf("b=%d", b);
}4 b/ ^* z+ E" ~' b! {

A.a=0 b=7( @, ~- N2 ^. |- E. A

B.a=0 b=-7.67

# q4 o( D7 {( s    C.a=1 b=78 N4 j5 U  V2 U

D.a=1 b=-7.67( K  v" t5 ]: R3 c4 u

答:————

G! I. t  @% f1 W/ f9 Q14.[单选题] 若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是:

# k) d9 h9 ~9 a7 j    A.2.09 M1 a: ~" x0 z/ \6 r5 l: e

B.2/ A& X8 D. t$ z8 `; ?  j

C.2.5" v$ Q  Q5 O: V2 D$ b/ f1 K8 F

D.1z, g: g  U7 k$ y* X8 E3 P

答:————

% T; a& l, w( {# ~- }; H15.[单选题] 有以下程序
#include
main()
{ int?? a,b,c=246;
a=c/100%9;
b=(-1)&&(-1);
printf("%d,%d\n",a,b);
}
输出结果是:% v/ i) K) \0 m  W3 k+ g* k9 |4 H' f

A.2,13 |- R% c/ n& p6 ]+ G/ @2 n

B.4,3/ H, ?7 n4 a/ r( W9 ~

C.2,-1! c' k. q# ?) @; G' G/ b6 H

D.3,2

: g+ D' V) _5 O$ ]    答:————% J$ Y5 F% _4 M( h, c6 @  b

16.[单选题] 执行以下程序段时:
x=-1;
do? {x=x*x;??? }?? while(! x);

; P2 o+ x2 x0 s/ W" G  \' e    A.系统将提示有语法错误

, C: k$ \! i8 J7 N" f    B.循环体将执行两次

1 `/ o- t' n' ?+ i    C.循环体将执行一次. ^! {5 q" [" k/ s8 t3 W8 l

D.循环体将执行无限次

0 e& O5 c/ }  F' N. a    答:————

# J1 F$ K. i2 x2 o! v6 C17.[单选题] 有以下函数
char *fun(char *p)
{ return p; }
该函数的返回值是:$ D$ _5 e4 E( J" D5 b# Y5 [

A.形参p中存放的地址值, Z4 Z, p$ ~! m

B.形参p自身的地址值* o( l, s7 Z4 j( Z) V' C) T

C.一个临时存储单元的地址i  b& C: b4 n' m* F# _, |

D.无确切的值! C* E9 I% z9 M2 C9 ~% s

答:————+ H% H9 n. N& v6 P6 L) X: R0 @

18.[单选题] 请选出合法的C语言赋值语句(  ). s% @9 |% u7 c8 x+ M% v( \7 `

A.k=int(a+b)

' F9 r7 A/ R, t: L2 o    B.a=58,b=58

5 r* a: Z% T5 K- z, u    C.i++;

- w6 f7 M2 E6 F    D.a=b=58

3 H: g) v* x3 R7 q- A    答:————7 |1 W$ @5 ]- i4 k6 C, D" E

19.[单选题] 下列运算符中优先级最高的是_______。

. y* i! G9 ]6 P. a4 I    A.!=

6 R2 _; E  p& Y    B.+

3 u3 @/ M8 p' |1 `! O0 ^    C.<7 e! e+ l* v/ v* R5 z$ u. ?

D.&&2 F4 v; a- D9 k* b  S/ ]" h

答:————- s4 H# Y6 w0 w

20.[单选题] 设有以下宏定义:
#define????? N?????? 3
#define????? Y(n)?????? ( (N+1)*n)
则执行语句:z=2 * (N+Y(5+1));后,z的值为:

( Q% L( o: L; m: q8 q    A.421 Z. J/ e/ f) [

B.出错

! i  R1 ]  p, ?: B2 z2 Z9 t    C.54

: _# c' S( o* }/ `, F5 t% G# t    D.48

( W) e2 q8 ]" y' a0 U    答:————' v( |' e% H  A% _# v5 \

21.[多选题] 以下能对二维数组a进行正确初始化的语句是(    )

2 |3 J' w6 r' P2 n3 W7 Y    A.int a[2][3]={{1, 2}, {3, 4}, {5, 6}};$ b- ~) A) |5 T# ^" k- ]8 }

B.int a[2][ ]={{1, 2}, {0}};

5 ?+ x2 x8 J7 Y* P' I5 Z2 j0 {    C.int a[ ][3]={1, 2, 3, 4, 5, 6};0 K. k  r3 @* U% }. d8 o: K% a8 v( a( w

D.int a[2][3]={0};

$ t9 w7 g6 B% ?% J% |    答:————3 |( c$ v. K, Y+ e% n. x" D5 z& H1 T

22.[多选题] 能把字符串:Hello!赋给数组b的语句是(    )

# l, l  U6 c. F1 I5 ~/ c    A.char b[10]={‘‘H‘‘,‘‘e‘‘,‘‘l‘‘,‘‘l‘‘,‘‘o‘‘,‘‘!‘‘};6 `% {# S3 R' p7 S

B.char b[10]="Hello!";

: g/ B3 ^$ i7 k8 d0 I% r8 H- F    C.char b[10];strcpy(b,"Hello!");& t3 A: D, K$ K  o+ e

D.char b[10];b="Hello!";; L  n* \  R' `& }, e- Q

答:————

! t: b- V! \0 a$ m8 K+ a5 ^* y2 l23.[多选题] 以下不合法的字符型常量是(    )

# k1 z( \! e' Z( N    A.‘‘\081‘‘8 K# n# Z% S) t. I0 m6 i% F

B."\n"

4 |3 r! V$ p3 J" B* ]4 Q, `    C.‘‘\x13‘‘

' ~4 T" o" a( n1 \    D.‘‘\065‘‘8 I7 I, w7 f9 A' A7 b1 [

答:————% f- Z& J3 m' L% q3 Z

24.[多选题] 若要求定义具有10个int型元素的一维数组a,则以下定义语句中正确的是 (    )

( L9 f; C5 [) u& v. R& j    A.int  n=10,a[n];

6 ^# ~. l( n' ]/ }# F    B.int  a[5+5];: P0 f0 f4 X5 j5 d" q+ Y; h- H

C.#define  N  10

0 {0 K; Q8 r, x# ?1 _int  a[N];2 c  I, O# v' N" a2 B

D.#define  n  5

0 ~2 L' N$ Z  r0 Mint  a [2*n];8 i0 \( L* L) l6 _& q

答:————

9 f. E1 T7 Y6 s7 p25.[多选题] 对于基本类型相同的两个指针变量之间,可以进行的运算是(    )

5 Y( o( @" i% K/ q1 ~* X5 z3 g2 a; U. z    A.<

$ D% Y  J4 J7 x4 E    B.+

' ^! [1 J' h5 O* B* p& L    C.=

7 l7 `( f! ^  w0 j* Z7 u- c    D.-

5 _, Z" ~& g& _) M9 D. i    答:————

% `, n# T! L9 F' j26.[多选题] 下列定义变量的语句中正确的是(    )6 F5 z0 p/ A! r* F" ~: R; }0 u

A.float  US$;$ B' F1 ^" P( R7 {" k# l: ~2 V

B.int  _int;. s# T/ p0 G/ ?  L

C.char  For;

+ O, D3 y8 u' J4 n" V    D.double  int_;

! j5 o3 A' u- O5 y/ B    答:————) I4 N- P0 B4 a0 s+ h

27.[多选题] 已知大写字母A的ASCⅡ码是65,小写字母a的ASCⅡ码是97。以下能将变量c中的大写字母转换为对应小写字母的语句是(    )5 o0 `4 _0 w  u+ z$ q  H( _* T

A.c=c-‘‘A‘‘+‘‘a‘‘1 G" J5 o. [* w- G: C1 W

B.c=(c-‘‘A‘‘)%26+‘‘a‘‘

3 T0 b0 s5 z! y/ P! k9 @0 m    C.c=c+32$ b" }; g; H% |& F

D.c=(‘‘A‘‘+c)%26-‘‘a‘‘

# A8 U! E! a- a4 ?3 B, }% ]0 _" P    答:————

# q/ x4 M# }# r' V28.[多选题] 设a为整型变量,能正确表达数学关系:10

A.a==11||a==12||a==13||a==14) Q' `4 U2 `7 c- C3 Y, \

B.10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值