模拟考试题(2) c语言,计算机二级《C语言》考试模拟试题与答案(2)

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

main()

{int a[3][3]={{1,2},{3,4),{5,6}},i,j,s=0;

for(i=1;i<3;i++)

for(j=0;j<=i;j++)s+=a[i][j];

printf("%d\n",s);

}

A.18

B.19

C.20

D.21

22.有下列程序:

main()

{ int k=5;

while(--k) printf("%d",k=1);

printf("/n");

)

执行后的输出结果是( )。

A.1

B.2

C.4

D.死循环

23.若有定义:“int a[2][3];”,则对a数组的第i行第J列元素的正确引用为( )。

A.*(*(a+i)+j)

B.(a+i)[j]

C.*(a+i+j)

D.*(a+i)+j

24.下列能正确进行字符串赋值的是( )。

A.char s[5]={"ABCDE"};

B.char s[5]={’A’,’B’,’C’,’D’,’E’}; 、

C.char*S;S="ABCDE";

D.char*s;printf("%《",s);

25.现有以下结构体说明和变量定义,如图所示,指针P、q、r分别指定一个链表中连续的3个结点。

struct node

{har data;

struct node*next;)*P,*q,*r;

现要将q和r所指结点交换前后位置,同时要保持链表的结构,下列不能完成此操作的语句是( )。

A.q-:>next=r->next;p--:>next=r;rm:>next=q;

B.q-:>next=r;q->next=r->next;r->next=q;

C.q-:>next=r->next;r->next=q;p->next=r;

D.q-:>next=q;p->next=r;q->next=r->next;

26.有下列程序:

main()

{int i,j,x=0;

for(i=0,i<2;i++)

{x++;

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

{if(j%2)continue;

x++:

)

x++:

}

printf("x=%d\n"x);

}

程序执行后的输出结果是( )。

A.x=4

B.x=8

C.x=6

D.x=12

27.有下列程序:

int funl(double a){return a*=a;} 、

int fun2(double x,double y)

{double a=0,b=0;

a=funl(x);b=funl(y);return(int)(a+b);

)

main()

{double w;w=fun2(1.1,2.0),……}

程序执行后变量w中的值是( )。 、

A.5.21 B.5 C.5.0 D.0.0

28.有下列程序:

main()

{int i,s=0,t[]={1,2,3,4,5,6,7,8,9};

for(i=0;i<9;i+=2)s+=*(t+i);

printf("%d\n",s);

}

程序执行后的输出结果是( )。

A.45

B.20

C.25

D.36

29.有下列程序:

int fun(int n)

{if(n= =1))return l;

else

return(n+fun(n-1)):

}

main()

{ int x;

seanf("%d",&x);x=fun(x);printf("%d\n",x);

}

执行程序时,给变量x输入l0,程序的输出结果是( )。

A.55

B.54

C.65

D.45

30.有下列程序:

int fun(int x[],int n)

{ static int sum=0,i;

for(i=0;i   return sum;

}

main()

{int a[3]={1,2,3,4,5),b[3]={6,7,8,9),s=0;

s=fun(a,5)+fun(b,4);printf("%d\n",s);

程序执行后的输出结果是( )。 、

A.45

B.50

C.60

D.55

31.有下列程序:

main()

f char*P[]={"3697","2584");

int i,j;long num=0;

for(i=0;i<2;i++)

{j=0;

while(p[i][j]!=’\0’)

{if((p[i][j]-t\0’)%2)num=10*num+p[j][j]-’0’;

j+=2;

)

)

printf("%d\n",num);

)

程序执行后的输出结果是( )。

A.35 B.37 C.39 D.3975

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

main()

{ char st[20]="hell0\O\t\\\”;

printf("%d%d\n",strlen(st),sizeof(st));

}

A.9 9

B.5 20

C.13 20

D.20 20

33.若有下的定义:"int t[3][2];",能正确表示t数组元素地址的表达式是( )。

A.&t[3][2]

B.t[3]

C.t[l]

D.t[2][2]

34.函数fseek(pf,OL,SEEK_END)中的SEEK_END代表的起始点是( )。

A.文件开始

B.文件末尾

C.文件当前位置

D.以上都不对

35.下述程序的输出结果是( )。

#include

main()

{int i;

for(i=1;i<=10;i++)

{if(i*i>=20)&&(i*i<=lOO))

break;

}

printf("%d\n",i*i);

)

A.49

B.36

C.25

D.64

36.若有定义“int b[8],*p=b;”,则p+6表示( )。

A.数组元素b[6]的值

B.数组元素b[6]的地址

C.数组元素b[7]的地址

D.数组元素b[0]的值加上6

37.设变量已正确定义,则以下能正确计算f=n!的程序是( )。

A.f=0; for(i=1;i<=n;i++)f*=i;

B.f=1;for(i=1;i  C.f=1;for(i=n;i>1;i++)f*=i;

D.f=1;for(i=n;i>=2;i--)f*=i;

38.下述程序执行的输出结果是( )。

#include

main()

{char a[2][4]; ,

strcpy(a。"are");strcpy(a[1],"you");

a[o][3]=’&’;

printf("%s\n",a);

)

A.are&you

B.you

C.are

D.&

39.设x=011050,则x=x&01252的值是( )。

A.0000001000101000

B.1111110100011001

C.0000001011100010

D.1100000000101000

40.在“文件包含,,预处理语句的使用形式中,当#include后面的文件名用(双引号)括时,寻找被包含文件的方式是( )。

A.直接按系统设定的标准方式搜索目录

B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索

C.仅仅搜索源程序所在目录

D.仅仅搜索当前目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值