试题答案

3773考试网计算机等级考试试题答案正文

[组图]2009年9月全国计算机等级考试二级C语言真题及答案

来源:fjzsksw.com 2010-4-1 11:31:05

 

 

 

21)有以下程序

     #include <stdio.h>

     main()

     { int n=2,k=0;

       while(k++&&n++>2);

       printf(“%d %d\n”,k,n);

     }

     程序运行后的输出结果是

     A0 2

     B1 3

     C5 7

     D1 2

 

22)有以下定义语句,编译时会出现编译错误的是

     Achar a=’a’;

     Bchar a=’\n’;

     Cchar a=’aa’;

     Dchar a=’\x2d’;

23)有以下程序

#include <stdio.h>

main()

{ char c1,c2;

  c1=’A’+’8’-‘4’;

  c2=’A’+’8’-‘5’;

  printf(“%c,%d\n”,c1,c2);

}

已知字母AASCII码为65,程序运行后的输出结果是

     AE,68

     BD,69

     CE,D

     D)输出无定值

 

24)有以下程序

     #include <stdio.h>

     void fun(int p)

     { int d=2;

       p=d++; printf(“%d”,p);}

     main()

     { int a=1;

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

     程序运行后的输出结果是

     A32

     B12

     C21

     D22

 

25)以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能

#define MIN -2147483647

     int findmax (int x[],int n)

     { int i,max;

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

       { max=MIN;

         if(max<x[i]) max=x[i];}

       return max;

     }

     造成错误的原因是

     A)定义语句int i,max;max未赋初值

     B)赋值语句max=MIN;中,不应给maxMIN

     C)语句if(max<x[i]) max=x[i];中判断条件设置错误

     D)赋值语句max=MIN;放错了位置

 

26)有以下程序

     #include <stdio.h>

     main()

     { int m=1,n=2,*p=&m,*q=&n,*r;

       r=p;p=q;q=r;

       printf(“%d,%d,%d,%d\n”,m,n,*p,*q);

     }

     程序运行后的输出结果是

     A1,2,1,2

     B1,2,2,1

     C2,1,2,1

     D2,1,1,2

 

27)若有定义语句:int a[4][10],*p,*q[4];0≤i<4,则错误的赋值是

     Ap=a

     Bq[i]=a[i]

     Cp=a[i]

     Dp=&a[2][1]

 

28)有以下程序

     #include <stdio.h>

     #include<string.h>

     main()

     { char str[ ][20]={“One*World”, “One*Dream!”},*p=str[1];

       printf(“%d,”,strlen(p));printf(“%s\n”,p);

     }

     程序运行后的输出结果是

     A9,One*World

     B9,One*Dream

     C10,One*Dream

     D10,One*World

 

29)有以下程序

     #include <stdio.h>

     main()

     { int a[ ]={2,3,5,4},i;

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

       switch(i%2)

       { case 0:switch(a[i]%2)

              {case 0:a[i]++;break;

               case 1:a[i]--;

              }break;

         case 1:a[i[=0;

}

for(i=0;i<4;i++) printf(“%d”,a[i]); printf(“\n”);

}

     A3 3 4 4

     B2 0 5 0

     C3 0 4 0

     D0 3 0 4

30)有以下程序

     #include <stdio.h>

#include<string.h>

     main()

{ char a[10]=”abcd”;

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

}

程序运行后的输出结果是

     A7,4

     B4,10

     C8,8

     D10,10

 

 

上一页  [1] [2] [3] [4] [5] [6] [7] 下一页

触屏版 电脑版
3773考试网 琼ICP备12003406号-1