二级C语言真题Word格式.docx

上传人:b****2 文档编号:4706924 上传时间:2023-05-03 格式:DOCX 页数:32 大小:28.92KB
下载 相关 举报
二级C语言真题Word格式.docx_第1页
第1页 / 共32页
二级C语言真题Word格式.docx_第2页
第2页 / 共32页
二级C语言真题Word格式.docx_第3页
第3页 / 共32页
二级C语言真题Word格式.docx_第4页
第4页 / 共32页
二级C语言真题Word格式.docx_第5页
第5页 / 共32页
二级C语言真题Word格式.docx_第6页
第6页 / 共32页
二级C语言真题Word格式.docx_第7页
第7页 / 共32页
二级C语言真题Word格式.docx_第8页
第8页 / 共32页
二级C语言真题Word格式.docx_第9页
第9页 / 共32页
二级C语言真题Word格式.docx_第10页
第10页 / 共32页
二级C语言真题Word格式.docx_第11页
第11页 / 共32页
二级C语言真题Word格式.docx_第12页
第12页 / 共32页
二级C语言真题Word格式.docx_第13页
第13页 / 共32页
二级C语言真题Word格式.docx_第14页
第14页 / 共32页
二级C语言真题Word格式.docx_第15页
第15页 / 共32页
二级C语言真题Word格式.docx_第16页
第16页 / 共32页
二级C语言真题Word格式.docx_第17页
第17页 / 共32页
二级C语言真题Word格式.docx_第18页
第18页 / 共32页
二级C语言真题Word格式.docx_第19页
第19页 / 共32页
二级C语言真题Word格式.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

二级C语言真题Word格式.docx

《二级C语言真题Word格式.docx》由会员分享,可在线阅读,更多相关《二级C语言真题Word格式.docx(32页珍藏版)》请在冰点文库上搜索。

二级C语言真题Word格式.docx

A)chara='

A'

b='

B'

;

B)floata=b=10.0;

C)inta=10,*b=&

a;

D)float*a,b=&

14、 

下列选项中,不能用作标识符的是

A)_1234_

B)_1_2

C)int_2_

D)2_int_

15、有以下定义语句

  doublea,b;

intw;

longc;

  若各变量已正确赋值,则下列选项中正确的表达式是

A)a=a+b=b++

B)w%(int)a+b)

C)(c+w)%(int)a

D)w=a==b;

16、有以下程序

  main( 

  {intm=3,n=4,x;

   

x=-m++;

x=x+8/++n;

printf("

%d\n"

x);

  }

  程序运行后的输出结果是

A)3

B)5

C)-1

D)-2

17、有以下程序

main()

{chara='

a'

b;

 

print("

%c,"

++a);

printf("

%c\n"

b=a++);

}

程序运行后的输出结果是

A)b,b 

B)b,c 

C)a,b 

D)a,c

18、有以下程序

  { intm=0256,n=256;

    printf("

%o%o\n"

m,n);

A)02560400

B)0256256

C)256400

D)400400

19、有以下程序

  { inta=666,b=888;

a,b);

 程序运行后的输出结果是

A)错误信息

B)666

C)888

D)666,888

20、有以下程序

  { inti;

for(i=0;

i<

3;

i++)

switch(i){

case0:

%d"

i);

case2:

default:

A)022111

B)021021

C)000122

D)012

21、 

若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<

10的是

A)abs(x-y)<

10

B)x-y>

-10&

&

x-y<

C)!

(x-y)<

-10||!

(y-x)>

D)(x-y)*(x-y)

22、有以下程序

main( 

{inta=3,b=4,c=5,d=2;

if(a>

b)

if(b>

c)

d+++1);

else

++d+1);

d);

A)2

B)3

C)43

D)44

23、 

下列条件语句中,功能与其他语句不同的是

A)if(a)printf("

elseprintf("

y);

B)if(a==0)printf("

C)if(a!

=0)printf("

D)if(a==0)printf("

24、有以下程序

  {inti=0,x=0;

for(;

{if(i==3||i==5)continue;

if(i==6)break;

i++;

s+=i;

};

s);

A)10

B)13

C)21

D)程序进入死循环

25、 

若变量已正确定义,要求程序段完成求5!

的计算,不能完成此操作的程序段是

A)for(i=1,p=1;

=5;

i++)p*=i;

B)for(i=1;

i++){p=1;

p*=i;

C)i=1;

p=1;

while(i<

=5){p*=i;

i++;

D)i=1;

do{p*=i;

}while(i<

=5);

26、有以下程序

  {chara,b,c,d;

scanf("

%c,%c,%d,%d"

&

a,&

b,&

c,&

d);

c,%c,%c,%c\n"

a,b,c,d);

  }

  若运行时从键盘上输入:

6,5,65,66。

则输出结果是

A)6,5,A,B

B)6,5,65,66

C)6,5,6,5

D)6,5,6,6

27、 

以下能正确定义二维数组的是

A)inta[][3];

B)inta[][3]=2{2*3};

C)inta[][3]={};

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

28、有以下程序

  intf(inta)

  {returna%2;

}

  {ints[8]={1,3,5,2,4,6},i,d=0;

for(i=0;

f(s[i]);

i++)d+=s[i];

A)9

B)11

C)19

D)21

29、 

若有以下说明和语句,intc[4][5],(*p)[5];

p=c;

  能正确引用c数组元素的是

A)p+1

B)*(p+3)

C)*(p+1)+3

D)*(p[0]+2))

30、有以下程序 

  {inta=7,b=8,*p,*q,*r;

p=&

q=&

b;

r=p;

p=q;

q=r;

%d,%d,%d,%d\n"

*p,*q,a,b);

A)8,7,8,7

B)7,8,7,8

C)8,7,7,8

D)7,8,8,7

31、 

s12和s2已正确定义并分别指向两个字符串。

若要求:

当s1所指串大于s2所指串时,执行语句S;

则以下选项中正确的是

A)if(s1>

s2)S;

B)if(strcmp(s1,s2))S;

C)if(strcmp(s2,s1)>

0)S;

D)if(strcmp(s1,s2)>

32、设有定义语句intx[6]={2,4,6,8,5,7},*p=x,i;

  要求依次输出x数组6个元素中的值,不能完成此操作的语句是

A)for(i=0;

6;

i++)printf("

%2d"

*(p++));

B)for(i=0;

*(p+i));

C)for(i=0;

*p++);

D)for(i=0;

i

33、有以下程序

  #include<stdio.h>

  {inta[ 

]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;

  *q=*(p+5);

  printf("

%d%d\n"

*p,*q);

A)运行后报错

B)66

C)611

D)510

34、有以下定义和语句

  inta[3][2]={1,2,3,4,5,6,},*p[3];

  p[0]=a[1];

  则*p[0]+1)所代表的数组元素是

A)a[0][1]

B)a[1][0]

C)a[1][1]

D)a[1][2]

35、 

有以下程序

   main( 

   {charstr[ 

][10]={"

China"

"

Beijing"

},*p=str;

    

%s\n"

p+10);

   }

   程序运行后的输出结果是

A)China

B)Bejing

C)ng

D)ing

36、有以下程序

  {chars[ 

]="

ABCD"

*p;

for(p=s+1;

p<s+4;

p++)printf("

p);

A)ABCDBCDCDD

B)ABCD

C)BCD

D)BCDCDD

37、 

在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则

A)称为函数的直接递归调用

B)称为函数的间接递归调用

C)称为函数的循环调用

D)C语言中不允许这样的递归调用

38、 

已有定义:

inti,a[10],*p;

则合法的赋值语句是

A)p=100;

B)p=a[5];

C)p=a[2]+2;

D)p=a+2;

39、 

以下叙述中正确的是

A)局部变量说明为static存储数,其生存期将得到延长

B)全局变量说明为static存储类,其作用域将被扩大

C)任何存储类的变量在未赋初值时,其值都是不确定的

D)形参可以使用的存储类说明符与局部变量完全相同

40、设有定义语句:

charc1=92,c2=92;

则以下表达式中值为零的是

A)c1^c2

B)c1&

c2

C)~c2

D)c1|c2

41、程序中对fun函数有如下说明

  void*fun( 

);

  此说明的含义是:

A)fun了数无返回值

B)fun函数的返回值可以是任意的数据类型

C)fun函数的返回值是无值型的指针类型

D)指针fun指向一个函数,该函数无返回值

42、 

]"

Yes\n/No"

*ps=s;

puts(ps+4);

*(ps+4)=0;

puts(s);

  程序运行后的输出结果是(选项D中的第一行是空行)

A)n/NoYes 

/No

B)/No 

Yes

C)n/NO 

Yes 

/No

D)/NoYes

43、 

  {unsignedinta;

intb=-1;

a=b;

%u"

a);

A)-1

B)65535

C)32767

D)-32768

44、有以下程序

  voidfun(int*a,inti,intj)

  {intt;

if(i<j)

{t=a[i];

a[i]=a[j];

a[j]=t;

j--;

fun(a,i,j);

  {intx[ 

]={2,6,1,8},i;

fun(x,0,3);

for(i=0;

i<4;

i++)printf("

x[i]);

\n"

A)1268

B)8621

C)8162

D)8612

45、 

有以下说明和定义语句

  structstudent

  {intage;

charnum[8];

  structstudentstu[3]={{20,"

200401"

},{21,"

200402"

},{10\9,"

200403"

}};

  structstudent*p=stu;

  以下选项中引用结构体变量成员的表达式错误的是 

A)(p++)->

num

B)p->

C)(*p).num

D)stu[3].age

46、 

有以下程序

]={1,3,5,7,2,4,6,0},i,j,k;

i<3;

for(j=2;

j>=i;

j--)

if(x[j+1]>x[j]){ 

k=x[j];

x[j]=x[j+1];

x[j+1]=k;

for(j=4;

j<7-i;

j++)

if(x[j+1]>x[j]){k=x[j];

for(i=0;

if(x[j]>x[j+1]){k=x[j];

i<8;

  }

  程序运行后的输出结果是:

A)75310246

B)01234567

C)76310462

D)13570246

47、有如下程序

#include〈stdio.h〉

{FILE 

*fp1;

fp1=fopen("

f1.txt"

w"

fprintf(fp1,"

abc"

fclose(fp1);

若文本文件f1.txt中原有内容为:

good,则运行以上程序后文件f1.txt中的内容为

A)goodabc 

B)abcd 

C)abc 

D)abcgood

48、48~50.以下程序的功能是:

建立一个带有头结点的单向链表,并将存储在数组中的字符依次转储到链表的各个结点中,请从与下划线处号码对应的一组选若中选择出正确的选项。

#include

stuctnode

{chardata;

structnode*next;

(48)CreatLis(char*s)

{structnode*h,*p,*q);

h=(structnode*)malloc(sizeof(structnode));

p=q=h;

while(*s!

='

\0'

p=(structnode*)malloc(sizeof(structnode));

p->

data= 

(49);

q->

next=p;

q= 

(50);

s++;

p->

next='

returnh;

{charstr[]="

linklist"

structnode*head;

head=CreatLis(str);

...

A)char* 

B)structnode 

C)structnode* 

D)char

49、A)*s 

B)s 

C)*s++ 

D)(*s)++

50、A)p->

next 

B)p 

C)sD)s->

next

二、填空题

1、在64位高档微机中,CPU能同时处理 【1】  

个字节的二进制数据。

2、 

E-mail地址由域名和用户名两部分组成,它们之间用@分隔,其中在@后面的部分是 【2】  

3、 

Windows窗口一般由标题栏、菜单栏、控制按钮等部分组成。

为了移动窗口,则要用鼠标拖动 【3】  

4、 

计算机软件分为系统软件和应用软件,UNIX系统属于 【4】  

5、 

在Windows环境下,为了将屏幕内容存入剪贴板,应按 【5】  

键。

6、 

以下程序段的输出结果是 【6】  

  inti=9;

  printf("

%o\n"

7、 

以下程序运行后的输出结果是 【7】  

  main( )

  { inta,b,c;

    a=25;

    b=025;

    c=0x25;

%d 

a,b,c);

8、以下程序运行后的输出结果是 【8】 。

  { intp[7]={11,13,14,15,16,17,18};

    inti=0,j=0;

    while(i

j);

9、以下程序运行后的输出结果是 【9】  

 { intx=1,y=0,a=0,b=0;

   switch(x)

    {case1:

switch(y)

       { case0:

a++;

break;

         case1:

b++;

       }

    case2:

    }

10、以下程序运行后的输出结果是 【10】  

  {inta [4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}};

    inti=0,j=0,s=0;

    while(i++<4)

    {

    if(i==2||i==4)continue;

    j=0;

    do{s+=a[j];

j++;

}while(j<4);

11、以下程序运行后的输出结果是【11】 

  main( )

  { chara[]="

Language"

b[]="

Programe"

    char*p1,*p2;

intk;

    p1=a;

p2=b;

    for(k=0;

k<=7;

k++)

    if(*p1+k)==*(p2+k)}printf("

%c"

*(p1+k));

12、以下程序运行后的输出结果是【12】 

{chara[]="

123456789"

inti=0;

p=a;

while(*p)

{if(i%2==0)*p='

*'

p++;

puts(a);

13、以下程序中,for循环体执行的次数是 【13】  

  #define N 2

  #define M N+1

  #define K M+1*M/2

    for(i=1;

i〈K;

    {...}

    ...

14、以下程序通过函数sunFun求。

这里f(x)=x2+1

  { printf("

Thesum=%d\n"

SunFun(10));

 }

  SunFun(intn)

  { intx,s=0;

     for(x=0;

x<=n;

x++) 

s+=F( 【14】 );

     returns;

  F(intx)

  { return 

 【15】 );

15、以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。

请填空。

  { inti,a[20],sum,count;

   sum=count=0;

   for(i=0;

i<20;

i++) 

 【16】 );

   fro(i=0;

   { if(a>0)

    { count++;

      sum+= 【17】  

   printf("

sum=%d,count=%d\n"

sum,count);

16、以下程序中,函数sumColumM的功能是:

求出M行N列二维数组每列元素中的最小值,并计算它们的和值。

和值通过形参传回主函数输出。

  #define 

M2

N4

  voidSumColumMin(inta[M][N],int*sum)

  { inti,j,k,s=0;

    for(i=0;

i〈N;

    { k=0;

    for(j=1;

j<M;

      if(a[k][i]>a[j][i])k=j;

    s+= 【18】 ;

   【19】  

=s;

  {int x[M][N]={3,2,5,1,4,1,8,3},s;

     SumColu

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2