c语言全套试题

  • 格式:doc
  • 大小:87.50 KB
  • 文档页数:13

下载文档原格式

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

1.下列各组全是合法的C语言标识符的是( A )。

(A) day , abc_1_a , x1

(B) int , Abc , basic

(C) M.John , year , sum

(D) for , MONTH , abc

2.若d为double型,表达式d=1, d+5, d++的值是( D )。

(A) 0 (B) 6.0

(C) 2.0 (D) 1.0

3.程序中定义如下宏:

#define S(a,b) a*b

若定义int area;且令area=S(3-1,3+4),则变量area的值为( B )。

(A) 10 (B) 4 (C) 14 (D) 28

4.程序中定义如下函数:

int S(int a, int b)

{ return(a*b); }

若定义int area;且令area=S(3-1,3+4),则变量area的值为( C )。

(A) 10 (B) 4 (C) 14 (D) 28

5.设有定义“enum color{red,green,blue}d;”,则下列叙述中正确的是( A )。

(A) color是类型,d是变量,red是常量

(B) color是类型,d和red是变量

(C) color和d是类型,red是常量

(D) color和d是变量,red是常量

6.函数调用语句func((a,b),(a,b,c));中,func函数的实参个数为( B )。(A) 1 (B) 2 (C) 4 (D) 5

7.以下程序调用scanf函数给变量a 赋值,但方法是错误的,其错误的原因在于( B )。

void main( )

{ int *p,a; p=&a;

scanf(“%d”,*p); }

(A)*p表示是指针变量p的地址

(B) *p表示是变量a的值,而不是地址

(C) *p表示是指针变量p的值

(D) *p只能用来说明p是一个指针变量

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

#include

int a,b;

void fun()

{a=100;b=200;}

void main()

{ int a=10;b=20;

fun();

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

}

(A) 100200 (B) 10200 (C) 200100 (D) 1020

9.现要定义一个二维数组c[m][n]来存放字符串“China”、“USA”、“England”,则常量m和n的合理取值是( A )。

(A) 3和8 (B) 2和10

(C) 4和9 (D) 3和7

10.下面程序段的运行结果是( B )。

char *p= “*ABCD*”;

p+=2 ; printf (“%s\n” ,p);

(A) *ABCD* (B) BCD*

(C) ABCD* (D) *ABC

11.若有定义“float a[10],*p;”,且数组a的首地址为2000,则执行语句“p=a+2;p++;”后p中的值为:( B )。

(A) 2003 (B) 2012

(C) 2008 (D) 2000

12.若有定义“float a[10],*p;”,且数组a的首地址为2000,则执行语句“p=a+1;p++;”后p中的值为:( C )。

(A) 2003 (B) 2012

(C) 2008 (D) 2000

13.执行下面的程序段,输出的正确结果是( B )。

int x='f'; printf("%c\n",'A'+(x-'a'+1));

(A)I (B) G

(C) J (D) H

14.在位运算中,非零操作数每右移一位,其结果相当于( B )。

(A) 操作数乘以2 (B) 操作数除以2

(C) 操作数除以16 (D) 操作数乘以16

15.下列程序执行后的输出结果是(小数点后只写一位)( A )。

#include

void main( )

{double d; float f; long L; int I;

I=f=L=d=20/3;

printf("%d %ld %f %f\n",I,L,f,d);

}

(A) 6 6 6.0 6.0 (B) 6 6 6.7 6.7

(C) 6 6 6.0 6.7 (D) 6 6 6.7 6.0

16.C语言可以处理的文件类型是( B )。

(A) 数据代码文件

(B) 文本文件和二进制文件

(C) 数据文件和二进制文件

(D) 文本文件和数据文件$

17.下面几组选项中,均不合法的标识符是( C )。

(A) A, P_0, do (B) float, la0, _A

(C) b-a, goto, int (D) _123, temp, INT

18.语句char p=’\073’;的作用是( D )。

(A) 使p包含一个字符

(B) 使p包含四个字符

(C) 使p包含三个字符

(D) 定义变量p为字符型类型,并进行初始化

19.以下所列语句中,合法的语句是(B )。

(A) a=1= b; (B) ++a;

(C) a=a+1=5; (D) y=int (a);

20.若有 int a ; 以下不能正确表达数学关系10

(A) 10

(B) a= =11||a= =12||a= =13||a= =14

(C) a>10&&a<15

(D) !(a<=10)&&!(a>=15)

21.下列关于switch,break语句的结论中,正确的描述是( B )。

(A) break语句是switch语句中的一部分

(B) switch语句中可以根据需要使用或不使用break语句

(C) 在switch语句中必须使用break语句

(D) 以上三个结论中有两个结论是正确的

22.执行语句“for(i=0;i++<3;);”后,变量i的值为( C )。

(A) 2 (B) 3 (C) 4 (D) 5

23.与语句while(!x)等价的语句是(A)。

(A) while(x= =0) (B) while(x!=0)

(C) while(x!=1) (D) while(~x)

24.设有以下语句:enum color { red=3,yellow,blue=10,white,black}; 则枚举变量black的值是( C )。

(A) 7 (B) 15 (C) 12 (D) 14

25.已有以下的变量定义int *p, a=5; 想使指针变量p指向整型变量a,应执行( C)。

(A) *p=&a (B) *p=a

(C) p=&a (D) p=a

26.设有一函数定义“void p(int *x);

{printf(“%d\n”,*x);}”和变量定义“int a=3;”,

则下列正确的函数调用是( D )。

(A) p(a) (B) p(*a)

(C) p(int *a) (D) p(&a)