《C语言程序设计》专题复习资料

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

第一部分《C语言程序设计》专题复习资料一.选择题

1、C语言中字符型(char)数据在内存中的存储形式是:( )

A)原码 B)补码 C)反码 D)ASCII码

2、C语言中长整型(long)数据在内存中的存储形式是:( )

A)原码 B)补码 C)反码 D)ASCII码

3、C语言的运算符按运算对象的数目可以分为:()

A)单目运算符 B)单目和双目运算符 C)单目、双目和三目运算符

D)单目、双目、三目和四目运算符

4、C语言中,int、char和short三种类型数据所占用的内存是()

A)均为2个字节 B)由用户自己定义

C)由机器的字长决定 D)任意的

5、C语言中的简单数据类型包括()

A)整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、逻辑型、字符型 D) 整型、实型、逻辑型、字符型

6、在C语言中,十进制的47可以等价的写成()

A)2f B)02f C)57 D)057

7、将字符g赋值字符变量c,正确的表达式是()

A)c=’g’ B)c=101

B)C)c=’\147’ D)c=’0147’

8、已知:char a; int b; float c; double d;执行语句c=a+b+c+d;后变量c的类型是()

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

9、已知int j,i=1; 执行语句j=-i++后,j 的值是()

A)1 B)2 C)-1 D)-2

10、已知int i, a; i=(a=2*3,a*5),a+6”后,变量i 的值是()

A)6 B)12 C)30 D)36

11、已知 int i=5;执行语句i+=++i;后, i的值()

A)10 B)11 C)12 D)无答案

12、字符串“\\\22a,0\n”的长度是()

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

13、已知char a=’\70’;则变量a中包含的字符数为()个。

A)1 B)2 C)3 D)说明非法

14、已知:int x=1, y=-1;则执行语句“printf(“%d\n , (x--&++y)”);”的输出结果是:()

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

15、已知: int a=b=c=1 且均为int 型变量,则执行以下语句: ++a||++b&&++c后变量a的值为(),变量b的值为()

A) 不正确 B) 0 C) 2 D) 1

A) 1 B) 2 C) 不正确 D) 0

16、设a=2 ,b=3, 则执行表达式c=b*=a-1后,变量c的值是()

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

17、要判断char型变量m是否为数字,可以使用以下表达式()

A)0<=m&&m<=9 B) ‘0’<=m&&m<=’9’

C)“0”<=m&&m<=”9” D) 以上答案均错误

18、已知:#define N 3; 的宏定义,执行语句i=N*3后,i的值是()

A) 3 B)6 C) 9 D) 以上答案均错误

19、若有以下宏定义:

#define X 5

#define Y X+1

#define Z Y*X/2

则执行以下printf语句后,输出结果是()

int a =Y;

printf(“%d”,Z);

printf(“%d\n”,--a);

A) 7,6 B)12,6 C)12,5 D) 7,5

20、若有以下宏定义:

#define N 2

#define Y(n) ((N+1)*n)

则执行以下”z=2*(N+Y(5))”,语句后,输出结果是()

A)语句有错误 B)z=34 C) z= 70 D)z无定值

21、若int k; 且有下面的程序片段,则输出结果是()

k=3;

if(k<0) printf(“####”);

else printf(“&&&&”);

A) ####B) &&&&

C) ####&&&& D)有语法错误

22、设有说明语句:int a=1 ,b=0 ;则执行以下语句后的输出为()

switch(a)

{ case 1:

switch(b)

{ case 0: printf(“**0**”);break;

case1: printf(“**1**”);break;

}

case 2:printf(“**2**”);break;

}

A) **0** B) **0****2**

C) **0****1****2** D) 有语法错误

23、与语句“while(!x)”等价的是()

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

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

24、与语句“while(x)”中的x等价的是()

A) x==0 B) x==1 C) x!=1 D) x!= 0

25、定义int I=1, 则执行语句“while(I++< 5) ; ”后,I的值是()

A)3B)4C)5D)6

26、若有int I ,x; 则:“for(I=x=0;I<9&&x!=5;I++.x++)””控制的循环体执行的次数是()

A)10B)9C)5D)6

27、若int a=5 ;则执行以下语句:

do

{ printf(“%2d”,a--);

}while(!a); 后的打印结果是()

A)5B)不打印任和内容C)4D)陷入死循环

28、若int x=3;且有以下程序片段,则输出结果是()

do

{ printf(“%d”,x-=2);

}while(!(--x));

A)1 B) 3 0 C) 1 -2 D)死循环

29、若int x;且有以下程序片段,则输出结果是()

for(x=3;x<6;x++)

printf((x%2)?”**%d” , ”##%d\n”,x);

A)**3B)##3C)##3D)**3##4

##4 **4 **4##5 **5

**5 ##5

30、C语言程序由函数组成,它的________。.

A)主函数必须在其它函数之前,函数内可以嵌套定义函数

B) 主函数必须在其它函数之后,函数内不可以嵌套定义函数

C) 主函数可以在其它函数之前,函数内不可以嵌套定义函数

D) 主函数必须在其它函数之后,函数内可以嵌套定义函数

31、一个c语言程序的基本组成单位是()

A)主程序B)子程序C)函数D)过程

32、一个c程序的总是从()开始执行

A主过程B) 主函数C)子程序D) 主程序33、c语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是()

A)地址传递B)值传递C)由实参传递形参,并形参传回实参D)由用户指定传递方式

34、错误的说明语句是()

A)Char word[ ]={‘T’,’u’,’r’,’b’,’b’,’\0’};

B)Char word[ ]={“Turbo\0”};

C)Char word[ ]= “Turbo\0”;

D)Char word[ ]=’ Turbo\0’;

35、已知:char s[5], c, int b ; 则调用函数scanf的正确语句是()

A)S canf(“%s%c”,s,c); B)Scanf(“%d%c”,&b,&c);

C) Scanf(“%d%c”,b,&c); D) Scanf(“%s%c”,s,&c);

36、要说明一个有10个int 元素的数组,应当选择语句()

A)int a[10]B)int a[2,5] C)int a[ ] D)int *a[10]

37、合法的数组的说明语句是()

A)int a[ ]=”string”B)int a[5]={0,1,2,,4,3,5}

C)char a=”string”D)char a[ ]={0,1,2,3,4,5}

38、调用strlen(“abcd\0ef\0g”)后的返回值是()

A) 4B) 5C) 8D) 9

39、已知:int I , x[3][3]={1,2,3,4,5,6,7,8,9,}

则以下输出的结果是()

for(I=0;I<3;I++)

printf(“%d”,x[i][2-i]);

A)15 9B)1 4 7C)3 5 7D)3 6 9

40、已知:char str[ ]=”ab\n\012\\\”; 则执行语句:printf(“%d”,strlen(str));后的结果是()

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

41、以下对外部的一维数组a进行正确初始化的是()

A) int a[10]=(0,0,0,0) ; B) int a[10]={ };

C) int a[ ]={ 0 };D) int a[10]={10*1 };

42、以下对外部的二维数组a进行正确初始化的是()

A)int a[2][]={{1,0,1},{5,3,2}};

B)int a[ ][3]={{1,0,1},{5,3,2}};

C)int a[2][4]={{1,0,1},{5,3},{4}};

D)int a[ ][3]={{1,0,1},{ },{5,3}};

43、以下正确的语句是()

A)int a[1][4]={1,2,3,4,5}

B) float x[3][ ]={{1},{3},{2}}

C) long b[2][3]={{1},{1,2},{1,2,3}}

D) double y[ ][3]={0 }

44、下面的程序段的运行结果是()

char a[7]=”abcdef”, b[4]=”ABC”

strcpy(a,b); printf(“%c”,a[5]);

A)空格B) \0C) e D) f

45、下面的程序段的运行结果是()

char a[3],b[ ]=”china”;

相关文档
最新文档