主页 > 教育培训 > 正文

计算机等级考试二级C语言考前密卷及答案(3)

[作者:姚炊]
2010-08-06 15:49

(25)以下选项错误的是
  A)main()
  { int x,y,z;
  x=0;y=x-1;
  z=x+y;}
  B)main()
  { int x,y,z;
  x=0,y=x+1;
  z=x+y;}
  C)main()
  { int x;int
  int y;
  x=0,y=x+1;
  z=x+y;}
  D)main()
  { int x,y,z;
  x=0;y=x+1;
  z=x+y,}
(26)有如下程序段
  int a=14,b=15,x;
  char c=′A′;
  x=(a&&b)&&(c<′B′);
  执行该程序段后,x的值为
  A)ture
  B)false
  C)0
  D)1
(27)下列程序执行后的输出结果是
  void func1(int i);
  void func2(int i);
  char st[]="hello,friend!";
  void func1(int i)
  { printf("%c",st[i]);
  if(i<3){i+=2;func2(i);}}
  void func2(int i)
  { printf("%c",st[i]);
  if(i<3){i+=2;func1(i);}}
  main()
  { int i=0; func1(i); printf("\n");}
  A)hello
  B)hel
  C)hlo
  D)hlm
(28)以下函数返回a所指数组中最大值所在的下标值
  fun(int *a,int n)
  { int i,j=0,p;
  p=j;
  for(i=j;i  if(a[i]>a[p])_________;
  return(p);}
  在下划线处应填入的内容是
  A)i=p
  B)a[p]=a[i]
  C)p=j
  D)p=I
(29)下面说明不正确的是
  A)char a[10]="china";
  B)char a[10],*p=a;p="china"
  C)char *a;a="china";
  D)char a[10],*p;p=a="china"
(30)以下程序的输出结果是
  #include
  void prt (int  *x, int  *y, int  *z)
  {printf("%d,%d,%d\n",++*x,++*y,*(z++));}
  main()
  {int a=10,b=40,c=20;
  prt (&a,&b,&c);
  prt (&a,&b,&c);}
  A)11,42, 31
    12,22,41
  B)11,41,20
    12,42,20
  C)11,21,40
    11,21,21
  D)11,41,21
    12,42,22
(31)若有函数内部说明:int a[3][4];则数组a中各元素
  A)可在程序的运行阶段得到初值0
  B)可在程序的编译阶段得到初值0
  C)不能得到确定的初值
  D)可在程序的编译或运行阶段得到初值0
(34)定义如下变量和数组:
  int k;
  int a[3][3]={9,8,7,6,5,4,3,2,1};
  则下面语句的输出结果是
  for(k=0;k<3;k++)printf("%d",a[k][k]);
  A)7 5 3
  B)9 5 1
  C)9 6 3
  D)7 4 1
(35)下列程序执行后的输出结果是
  main()
  { char arr[2][4];
  strcpy(arr,"you"); strcpy(arr[1],"me");
  arr[0][3]=′&′;
  printf("%s\n",arr);}
  A)you&me
  B)you
  C)me
  D)err
  (36)有以下函数
  char fun(char *p)
  {return p;}
  该函数的返回值是
  A)无确切的值
  B)形参p中存放的地址值
  C)一个临时存储单元的地址
  D)形参p自身的地址值
(37)以下正确的说法是
  A)定义函数时,形参的类型说明可以放在函数体内
  B)return后边的值不能为表达式
  C)如果函数值的类型与返回值类型不一致,以函数值类型为准
  D)如果形参与实参类型不一致,以实参类型为准
(38)有以下程序
  int f(int n)
  { if(n==1)return 1;
  else return f(n-1)+1;}
  main()
  { int i,j=0;
  for(i=1;i<3;i++)j+=f(i);
  printf("%d\n",j);}
  程序运行后的输出结果是
  A)4
  B)3
  C)2
  D)1
(39)设有如下定义:
  struck sk
  { int a;
  float b;
  } data;
  int *p;
  若要使P指向data中的a域,正确的赋值语句是
  A)p=&a;
  B)p=data.a;
  C)p=&data.a;
  D)*p=data.a;‘

猜你喜欢

编辑推荐

相关内容

推荐阅读

加载中...
没有更多了
X