c语言模拟考试题2

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

1. 以下的不是C语言标识符是(C)。

A)abc1_B)_abc1C)5BC1_D)Abc1

2. 结构化程序设计的基本结构不包括(A)

A)从上到下的结构B)选择结构C)循环结构D)顺序结构

3. C程序的基本单位是(A)。

A)函数B)过程C)语句D)子程序

4. 以下选项中(C)是的C语言赋值语句。

A)x=3,y=5B)a=b=6C)i--;D)y=int(x);

5. 设有如下定义:int a=1,b=2,c=3,d=4,m=2,n=2;则执行表达式:(m=a>b)&&(n=c>d)后,n的值为(B)。

A)1B)2C)3D)0

6. 设整型变量x的值为5,y的值为2,则值为1的表达式是(D)。

A)!(y==x/2)B)Y!=x%3C)X>0&&y<0D)X!=y||x>=y

7. 假设整型变量a为2,使b的值为0的表达式是(C)。

A)b=a/2B)b=6-(--a)C)b=a%2D)b=a>3?0:1

8. 设int x=3,y=4,z=5;则下面表达式中值为0的是(D)。

A)x&&y B)x<=y C)x||y+z&&y-z D)!((x

9. 已知a=12,表达式a+=a-=a*=a的值为()

A)A)144B)-12C)0D)24

10. 设有语句a=4;则执行语句a-=a+=a*a;后,变量a的值是()

A)4B)0C)20D)16

11. 设有int a=4,b=6;则表达式a&b的值为(B)

A)3B)4C)11D)12

12. 若有定义:int x=3;double y;则执行语句y=(double)x;后,变量x的数据类型为(A)。

A)int B)char C)flaot D)double

13. 若有定义double x,y;则表达式x=1,y=x+3/2的值为()。

A)1B)2C)2.0D)2.5

14. 若有定义int x,y,t;则执行语句:x=y=3,t=++x||++y;后,y的值为()。

A)不定值B)4C)3D)1

15. 若x、i、j和k都是int型变量,则计算下面表达式后,x的值为()。

x=(i=4,j=16,k=32)

A)4B)16C)32D)52

16. 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。

A)7B)8C)6D)2

17. 已有定义double d,f;

数据的输入方式为:3.45 1.2

根据定义和数据的输入方式,输入函数调用语句的形式为()

A)scanf("%lf%lf",&d,&f) B)scanf("%f%f",&d,&f) C)scanf("3.2f%3.1f",&d,&f) D)scanf("%3.2lf%3.1lf",&d,&f) 18. 下面程序的输出是()。

#include

void main()

{int x=10,y=3;

printf(“%d\n”,y=x/y);

}

(A)0(B)1(C)3(D)不确定的值

19. 下面程序运行情况是()。

#include

void main()

{int x=3,y=0,z=0;

if(x=y+z)

printf(“****”);

else

printf(“####”);

}

(A)有语法错0不能通过编译(B)输出**** (C)可以通过编译,但不能通过连接,因而不能运行(D)输出####

20. 以下程序的输出结果是()。

#include

main()

{int i=10,j=10;

printf("%d,%d",--i,j--);

}

(A)11,10(B)9,10(C)010,9(D)10,9

21. 为了避免嵌套的if-else语句的二义性,C语言规定else总是与(C)组成配对关系。

(A)缩排位置相同的if(B)在其之前未配对的if

(C)在其之前未配对的最近的if(D)同一行上的if

22. 假定所有变量均已定义,ok1=1;ok2=2;ok3=3;x=15;

if(!ok1)x--;

else if(ok2)if(ok3)x=3;

else x=4;

上面程序段运行后x的值是:()

A)14B)4C)15D)3

23. 在C语言的if语句中,用作判断的表达式为(D).

A)关系表达式B)逻辑表达式C)算术表达式D)任意表达式

24. 下面的程序,描述的是()

main()

{int x=3;

do

{printf("%d\n",x-=2);}

while(!(--x));

}

(A)输出的是1(B)输出的是1和-2(C)输出的是3和0(D)是死循环

25. 执行下面程序后,a的值是()。

#include

void main()

{int a;

printf(“%d\n”,(a=3*5,a*4,a+5));

}

(A)65(B)20(C)15(D)10

26. 以下程序的输出结果是:A

main()

{int n=4;

while(n--)printf("%d",--n);

}

A)20B)31C)321D)210

27. 设int a=1,则执行完循环While(a++<5);a的值是:A

A)6B)5C)1D)-264

28. 在下列for循环中,其循环次数是(B)

for(x=1,y=0;(y!=123)&&(x<4);x++);

A)4B)3C)1D)无数多次

29. 假定a和b为int型变量,则执行以下语句后b的值为()

a=1;b=10;

do{b-=a;a++;}

while(b--<0);

(A)9(B)-2(C)-1(D)8

30. 如果有#define f(x,y)x+y及int a=2,b=3;则执行printf("%d",f(a,b)*f(a,b))后的值为()。

(A)36(B)25(C)11(D)13

31. 若#include后面的文件名用双引号括起来,寻找被包含文件的方式是(B)。

A)先按系统设定的标准方式查找,再在当前目录中查找B)先在当前目录中查找,再按系统设定的标准方式查找C)只在当前目录中查找D)只按系统设定的标准方式查找

32. 执行下面的程序C

#define SQR(X)X*X

main()

{int a=10,k=2,m=1;

a/=SQR(k+m)/SQR(k+m);

printf("%d\n",a);}

后,a的值是()。

(A)10(B)9(C)1(D)0

33. 下面程序的输出结果是(D)

#include"stdio.h"

#define SUB(x,y)(x)*y

main()

{int a=3,b=4;printf("%d\n",SUB(a,b+1));}

A)12B)16C)15D)13

34. 函数strcat(str1,str2)的功能是(B)

A)将字符串str1连接到字符串str2之后B)将字符串str2连接到字符串str1之后

C)将str2复制到字符串str1中D)将str1复制到字符串str2中。

35. 若有定义:char a[30]=“china\0\t\’\\”;则strlen(a)和sizeof(a)的值是(A)。

相关文档
最新文档