c语言选择题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.以下运算符中优先级最低的是(C)。

A、&&

B、|

C、||

D、&

2.不合法的if语句是:(D)

A、if(表达式) 语句1 else 语句2

B、if(表达式) 语句

C、if(表达式1)语句1 else if(表达式2)语句2 else 语句3。

D、if 关系表达式语句1 else 语句2

3.以下不是无限循环的语句为(D)。

A、while(1){x++;}

B、for(;;x++=i);

C、for(i=10;;i--) sum+=i;

D、for(y=0,x=1;x>++y;x=i++) i=x;

4.调用函数时,基本类型变量做函数参数, 实参和对应的形参(B).

A、不占用存储单元

B、各自占用独立的存储单元

C、同名时才能共用存储单元

D、共占用一个存储单元

5.已知有宏定义#define F(a) a*(a+2),则F(4+3)的值为(D).

A、24

B、15

C、63

D、31

6.int a[10]; 给数组a的所有元素分别赋值为1、2、3、……的语句是(D)

A、for(i=1;i<11;i++)a[i]=i;

B、for(i=1;i<11;i++)a[0]=1;

C、for(i=1;i<11;i++)a[i+1]=i;

D、for(i=1;i<11;i++)a[i-1]=i;

7.若有说明:int a[3][4];则数组a中各元素(A)。

A 、不能得到确定的初值 B、可在程序的编译阶段得到初值0

C、可在程序的运行阶段得到初值0

D、可在程序的编译或运行阶段得到初值0

8. 已定义float a; int i;选择正确的输入语句(C).

A、scanf("%6.2f%3d", &a,&i);

B、scanf("%f%s", &a,&i);

C、scanf("%6f%3d",&a,&i);

D、scanf("%f%d", a,i);

9 执行下面程序段后,k的值是:(B)

int k=2;

switch(k+1)

{ case 3:k+=1;

case 4:k--;break;

case 5:k*=3;

case 6:++k;} A、10 B、2 C、28 b D、27

11.以下程序段中,能够正确地执行循环的是(B)。

A、int s=6; m:if(s<100) exit(0); else s-=2; goto m:

B、int s=6; do s-=2; while(s);

C、for(i=1;i>10;i++)

D、static int a; while(a)

12.运行结果是" 11 12"的程序段是:请在A处填写正确内容(B)。

for(i=1;i<=2;i++)

___A___

A、for(j=1;j<=2;j++)printf("%3d",10*i+j);break;

B、{for(j=1;j<=2;j++) printf("%3d",10*i+j);break;}

C、for(j=1;j<=2;j++)printf("%3d",10*i+j);continue;

D、{for(j=1;j<=2;j++)printf("%3d",10*i+j);continue;}

13.设有以下定义:

int a[10]={1,2,3,4,5,6,7,8,9,10};

int *p=a;

则数值为6的表达式是(D).

A、p+5

B、*p+6

C、*(p+6)

D、*p+=5

14. 语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是(B)(说明:'\b'是退格符)。

A、a\bre\'hi\'y\\\bou

B、re'hi'you

C、a\bre\'hi\'y\bou

D、abre'hi'y\bou

14.执行下面程序段后,i的值是(A).

int i=10;

switch(i)

{ case 9: i+=1;

case 10: i--;

case 11: i*=3;

case 12: ++i; } A、28 B、10 C、9 D、27

15.从键盘输入的整数中找出最小值min,输入0时结束.请在A处填写正确语句(D)。

#include "stdio.h"

main()

{ int min=0,a;

do

{ scanf("%d",&a);

if(min>a) min=a;}

while(___A___);

printf("%d",min);} A、a=0 B、a==0 C、a>0&&a<0 D、a!=0 16.下面程序的运行结果是:(B)。

#include "stdio.h"

void main()

{ int x,i;

for(i=1;i<=100;i++)

{ x=i;

I f(++x%2==0)

if(++x%3==0)

if(++x%7==0)

printf("%d",x); } } A、4284 B、2870 C、3981 D、2668 17. 以下函数的类型是(C)。

fff(float x)

{return 5;} A void B、与参数x的类型相同C、int类型 D、无法确定

18设有以下宏定义:

#define M 4

#define T(t) ((M+1)*t)则执行语句:y=2*(M+T(4+1));后,y的值为(B).

A、28

B、50

C、出错

D、58

19.下面判断正确的是(D)。

A、char c[4]="abc",d[4]="abc";等价于 char c[4]=d[4]="abc";

B、char str[10]={"china"};等价于char str[10];str[]={"china"};

C、char *a="china";等价于 char *a;*a="china";

D、char *s="china";等价于 char *s;s="china";

20.以下不正确的叙述是(B)。

A、在C程序中所用的变量必须先定义后使用

B、当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值

C、程序中,APH和aph是两个不同的变量

D、若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变

21.设:long w=65535,t=7654321;

根据下面的输出结果,正确的程序段是(C).

w=65535,t=7654321

end

相关文档
最新文档