上海市计算机二级考试C语言复习资料题目Word文档格式.docx

上传人:b****6 文档编号:19403095 上传时间:2023-01-06 格式:DOCX 页数:67 大小:65.03KB
下载 相关 举报
上海市计算机二级考试C语言复习资料题目Word文档格式.docx_第1页
第1页 / 共67页
上海市计算机二级考试C语言复习资料题目Word文档格式.docx_第2页
第2页 / 共67页
上海市计算机二级考试C语言复习资料题目Word文档格式.docx_第3页
第3页 / 共67页
上海市计算机二级考试C语言复习资料题目Word文档格式.docx_第4页
第4页 / 共67页
上海市计算机二级考试C语言复习资料题目Word文档格式.docx_第5页
第5页 / 共67页
点击查看更多>>
下载资源
资源描述

上海市计算机二级考试C语言复习资料题目Word文档格式.docx

《上海市计算机二级考试C语言复习资料题目Word文档格式.docx》由会员分享,可在线阅读,更多相关《上海市计算机二级考试C语言复习资料题目Word文档格式.docx(67页珍藏版)》请在冰豆网上搜索。

上海市计算机二级考试C语言复习资料题目Word文档格式.docx

y'

};

B、chars[]="

C、chars[3]={"

D、chars[3];

s[0]='

s[1]='

s[2]='

5.以下程序段的输出结果是(D)

chararr[]="

ABCD"

char*ptr;

for(ptr=arr;

ptr<

arr+4;

ptr++)

printf("

%s\n"

,ptr);

A、ABCDB、AC、DD、ABCD

BCD

CD

D

6.C语言的auto型变量是(A)

A、存储在动态存储区中。

B、存储在静态存储区中。

C、存储在计算机CPU的寄存器中。

D、存储在外存储器中。

7.测试文件是否结束函数的函数名是(A)

A、feofB、EOFC、eofD、FEOF

8.下面程序段的输出结果是(C)

inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[4];

p=a;

printf(“%d\n”,*(*(p)+2));

*3=3

A、1B、5C、3D、7

9.C语言规定:

在一个源程序中,main函数的位置是(C)

A、必须在最开始B、必须在系统调用的函数的后面

C、可以任意D、必须在最后

10.一个C程序的执行是从(A)

A、本程序的main函数开始,到main函数结束

B、本程序的第一个函数开始,到本程序文件的最后一个函数结束

C、本程序的main函数开始,到本程序文件的最后一个函数结束

D、本程序文件的第一个函数开始,到本程序main函数结束

11.下面的四个选项中,均是不合法的用户标识符的选项是(C)

A、AB、floatC、b-aD、_123

P_0la0gototemp

do_AintINT

12.下面四个选项中,均是合法转义字符的选项是(A)

A、’\’’B、’\’C、’\018’D、’\\0’

‘\\’‘\017’‘\f’‘\101’

‘\n’‘\”’‘xab’‘x1f’

13.sizeof(float)是(B)求长度

A、一个双精度型的表达式B、一个整型表达式

C、一种函数调用D、一个不合法的表达式

14.下述循环的循环次数是(B)

15.若有以下定义和语句,且0<

10,则对数组元素的错误引用是()

16.若二维数组a有m列,则在a[i][j]前的元素个数为(B)

A、j*m+iB、i*m+jC、i*m+j-1D、i*m+j+1

17.对两个数组a和b进行如下初始化

chara[]=”ABCDEF”;

charb[]={‘A’,’B’,’C’,’D’,’E’,’F’};

则以下叙述正确的是(D)

A、a与b数组完全相同B、a与b长度相同

C、a和b中都存放字符串D、a数组比b数组长度长

18.C语言中有关全局变量的说法,正确的是(B)

A、在使用到它的所有文件中均需定义

B、在函数体外定义一次

C、在main函数中定义

E、在main函数外定义

19.若有数组名作为函数调用时的实参,则传递给该函数形参的是(A)

A、数组的首地址B、数组的第一个元素的值

C、数组中全部元素的值D、数组元素的个数

20.下面程序段的输出结果是()

inta[][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[3];

printf(“%d\n”,*(*(p+1)+2));

A、3B、4C、6D、7

21.不属于C语言程序基本结构的是()

A)顺序结构B)选择结构C)函数结构D)循环结构

22.若有定义及赋值:

inta[6][6],*p;

p=*a;

则下列各式中能表示元素a[0][1]列地址的表达式是。

A)&

a[0]+1B)a[0]+1C)*(p+1)D)p+1

23.十进制数123转换成十六进制数是。

A)7AHB)7BHC)7CHD)7DH

24.C语言中合法的字符常量是。

A)'

\058'

B)'

ab'

C)'

\xab'

D)”\0”

25.下列字符中,ASCⅡ码值最小的是。

A)AB)aC)0D)空格

26.下面程序输出结果是__________

main()

{intk=0;

charc='

A'

;

do

{switch(c++)

{case'

:

k++;

break;

case'

k--;

C'

k+=2;

D'

k=k%2;

continue;

E'

k=k*10;

default:

k=k/3;

k++;

}while(c<

'

G'

);

printf("

k=%d\n"

k);

}

A)k=3B)k=4C)k=2D)k=0

27.设有如下定义:

intx=l,y=-1;

,则语句:

%d\n"

,(x--&

++y));

的输出结果是()

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

28.C语言规定,函数返回值的类型是由。

A)return语句中的表达式类型所决定

B)调用函数时的主调函数类型所决定

C)调用函数时系统临时决定

D)在定义该函数时所指定的函数类型所决定

29.下列定义中,不是指针数组定义的是。

A)int*p[5];

B)float*q[4];

C)int(*r)[6];

D)char*w[7];

30.以下程序运行结果为__________

#definePT3.5

#defineS(x)PT*x*x

{inta=1,b=2;

printf("

%4.1f\n"

S(a+b));

A)14.0B)31.5C)7.5D)10.5

31.下面程序输出结果是()

{chara[]="

ABCDEFG"

k,*p;

fun(a,0,2);

fun(a,4,6);

a);

fun(char*s,intp1,intp2)

{charc;

while(p1<

p2)

{c=s[p1];

s[p1]=s[p2];

s[p2]=c;

p1++;

p2--;

A)ABCDEFGB)DEFGABCC)GFEDCBAD)CBADGFE

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

{inta=1,i;

for(i=0;

i<

4;

i++)

func(a));

func(a)

inta;

{intb=0;

staticintc=1;

b++;

c++;

return(a+b+c);

A)4444B)4455C)4567D)5678

33.执行下面的程序后,y的值是__________

{inta[]={2,4,6,8,10};

inty=1,x,*p=a+1;

for(x=0;

x<

3;

x++)y+=*(p+x);

y);

A)17B)18C)19D)20

34.若使用下述程序段将整数30和浮点数5.5分别赋给变量a和b,那么输入应该是()

floatb;

scanf("

a=%d,b=%f"

&

a,&

b);

A)305.0B)a=30,b=5.5C)30,5.5D)a=30b=5.5

35.设有如下定义:

int(*ptr)();

则以下叙述中正确的是()

A)ptr是指向一维数组的指针变量

B)ptr是指向int型数据的指针变量

C)ptr是指向函数的指针,该函数返回一个int型数据

D)ptr是一个函数名,该函数的返回值是指向int型数据的指针

36.设有以下定义:

inta[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};

int(*ptr)[3]=a,*p=a[0];

则以下能够正确表示数组元素a[1][2]的表达式的是()

A)*(*ptr+1)[2]B)*(*(p+5))

C)(*ptr+1)+2D)*(*(a+1)+2)

37.若有以下定义和语句,且0<

10,则对数组元素的错误引用是()

inta[]={0,1,2,3,4,5,6,7,8,9},*p,i;

p=a;

A)*(a+i)B)a[p-a]C)p+iD)*(&

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

#defineSQR(X)X*X

{inta=10,k=2,m=1;

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

a);

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

39.表达式18/4*sqrt(4.0)/8的值的数据类型为()

A)intB)float

C)doubleD)不确定

40.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是()

if(a<

b)

if(c<

d)x=1;

else

c)

if(b<

d)x=2;

elsex=3;

elsex=6;

elsex=7;

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

41.判断char型变量ch是否为大写字母的正确表达式()

A)’A’<

=ch<

=’Z’B)(ch>

=’A’)and(ch<

=’z’)

C)(ch>

=‘A’)&

&

(ch<

=’Z’)D)(‘A’<

=ch)||(‘Z’>

=ch)

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

main()

{inti,k,a[10],p[3];

k=5;

for(i=0;

10;

i++)a[i]=i;

i++)p[i]=a[i*(i+1)];

for(i=0;

i++)k+=p[i]*2;

k);

}

A)20B)21C)22D)23

43.下面程序的运行结果是()

{charch[7]={"

65ab21"

};

inti,s=0;

ch[i]>

='

0'

ch[i]<

9'

i+=2)s=10*s+ch[i]-'

s);

A)12ba56B)6521C)6D)62

44.以下程序运行后的结果是()。

{chars[]="

12345678"

intv[4]={0,1,1,0},k,i;

for(k=0;

s[k];

k++)

{switch(s[k])

{case'

1'

i=0;

case'

2'

i=1;

3'

i=2;

4'

i=3;

v[i]++;

for(k=0;

k<

k++)printf("

%d"

v[k]);

A)0123B)0118C)5678D)0246

45.下面程序输出结果是()

}while(c<

A)k=3B)k=4C)k=2D)k=0

46.二进制数1110111B转换成十六进制数是()

A)77HB)37HC)73HD)E7H

47.能正确表示a和b同时为正或同时为负的逻辑表达式是()

A)(a>

=0‖b>

=0)&

(a<

0‖b<

0)B)(a>

=0&

b>

0&

b<

0)

C)(a+b>

0)&

(a+b<

=0)D)a*b>

48.要把高级语言编写的源程序转换为目标程序,需要使用()

A)编辑程序B)驱动程序C)诊断程序D)编译程序

49.英文小写字母d的ASCII码为100(十进制),英文大写字母D的ASCII码为()

A)50B)66C)52D)68

50.下面程序输出结果是()

voidprtv(int*x)

{printf("

++*x);

{inta=25;

prtv(&

a);

A)23B)24C)25D)26

51.下面程序的输出是()

intaa[3][3]={{2},{4},{6}};

{inti,*p=&

aa[0][0];

for(i=0;

i<

2;

i++)

{if(i==0)

aa[i][i+1]=*p+1;

++p;

*p);

A)23B)26C)33D)36

52.该程序的执行结果是()

#include<

stdio.h>

string.h>

{intfun(char*,int);

char*p;

p="

1234567"

fun(p,strlen(p));

puts(p);

intfun(char*w,intn)

{chart,*s1,*s2;

s1=w;

s2=w+n-1;

while(s1<

s2)

{t=*s1++;

*s1=*s2--;

*s2=t;

A)1234567B)7654321C)1711717D)7177171

53.试写出下列数学表达式的C语言表达式

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

{char*a="

1234"

fun(a);

);

fun(char*s)

{chart;

if(*s){t=*++s;

putchar(t);

fun(s);

55.若有定义及赋值:

则下列各式中能表示元素a[0][1]列地址的表达式是()

a[0]+1B)a[0]+1C)*(p+1)D)p+1

56.如果用八位二进制补码表示带符号的定点整数,则能表示的十进制数的范围是()

A)-127到+127B)-128到+128C)-127到+128D)-128到+127

57.若有定义及赋值:

inty,*p,*p1;

p=&

y;

p1=p;

*p1=4;

则可以输出变量y的地址的语句是()

A)printf("

%u\n"

,y);

B)printf("

,*p1);

C)printf("

,*p);

D)printf("

,&

y);

58.设有inty,u=0,x=15,下列各项中不能使y值为0的是()

A)y=x∧x;

B、y=x∣u;

C、y=x>

>

4;

D、y=x&

u;

59.二进制数1111111.101B转换成十六进制数是()

A)FF.AHB)FF.5HC)7F.AHD)7F.5H

60.字符串”123”在计算机内所占用的字节数是()个。

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

61.C语言中最基本的数据类型包括()

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

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

62.C语言中有关do—while循环的说法,正确的是()

A)在if语句内不能再使用do-while语句构成的循环

B)do-while语句构成的循环必须用break语句才能退出

C)do-while语句构成的循环,当while语句中的表达式值为非零时结束循环

D)do-while语句构成的循环,当while语句中的表达式值为零时结束循环

63.在C语言中,不正确的int类型的常数是()

A)32768B)0C)037D)Xaf

64.设有如下定义:

inta=2,b=1,c=3,d=4,m=2,n=2;

则执行表达式:

(m=a>

b)&

(n=c>

d)后,n的值为()

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

65.设a,b类型正确,语句:

,(a=2)&

(b=-2));

的执行结果是()

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

66.设有如下定义:

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

67.若有以下定义和语句,且0<

10,则对数组元素的错误引用是()

68.以下程序段的输出结果是()

chararr[]="

char*ptr;

for(ptr=arr;

A)ABCDB)AC)DD)ABCD

BCD

CD

D

69.下列定义中,不是指针数组定义的是()

D)char*w[7];

70.不能进行++和--运算的数据类型是()

A)指针变量B)整型变量C)整型常量D)字符变量

71.已知:

inta,b;

用语句scanf("

%d%d"

输入a、b的值时,不能作为输入数据分隔符的是()

A),B)空格C)回车D)[Tab]键

72.为表示关系x>

=y>

=z,应使用C语言表达式()

A)(x>

=y)&

(y>

=z)B)(x>

=y)AND(y>

=z)

C)(x>

=z)D)(x>

73.以下不能对二维数组a进行正确初始化的语句是()

A)inta[2][3]={0};

B)inta[][3]={{1,2},{0}};

C)inta[2][3]={{1,2},{3,4},{5,6}};

D)inta[][3]={1,2,3,4,5,6};

74.以下不正确的描述是()

A)break语句不能用于循环语句和switch语句外的任何其它语句

B)在switch语句中使用break语句或continue语句的作用相同

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1