读书人

计算机二级C语言专项习题一

发布时间: 2013-01-19 20:39:14 作者: maylh

  选择题

  12.1 以下程序的输出结果是

  A) 1,6,3,1,3

  B) 1,6,3,2,3

  C) 1,6,3,6,3

  D) 1,7,3,2,3

  main()

  { int i=1,j=3;

  printf("%d,",i++);

  { int i=0;

  i+=j*2;

  printf("%d,%d,",i,j);

  }

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

  }

  答案:B

  12.2 以下程序的输出结果是

  A) 1 2 3 4

  B) 4 3 2 1

  C) 0 0 0 0

  D) 4 4 4 4

  main()

  { int a[]={1,2,3,4},i,x=0;

  for(i=0; i<4; i++) { sub(a,&x); printf("%d ",x); }

  printf("\\n");

  }

  sub(int *s,int *y)

  { static int t=3;

  *y=s[t]; t--;

  }

  答案:B

  12.3 以下程序的输出结果是

  A) 8,17

  B) 8,16

  C) 8,20

  D) 8,8

  main()

  { int k=4,m=1,p;

  p=func(k,m);

  printf("%d,",p);

  p=func(k,m);

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

  }

  func(int a,int b)

  { static int m,i=2;

  i+=m+1;

  m=i+a+b;

  return (m);

  }

  答案:a

  12.4 以下程序的输出结果是

  A) 34756

  B) 23445

  C) 35745

  D) 12345

  void fun(int *s)

  { static int j=0;

  do

  s[j]+=s[j+1];

  while (++j<2);

  }

  main()

  { int k,a[10]={1,2,3,4,5};

  for(k=1; k<3; k++) fun(a);

  for(k=0; k<5; k++) printf("%d",a[k]);

  }

  答案:C

  12.5 以下程序的输出结果是

  A) 3

  B) 6

  C) 5

  D) 4

  f(int a)

  { int b=0;

  static int c=3;

  a=c++,b++;

  return (a);

  }

  main()

  { int a=2,i,k;

  for(i=0; i<2; i++) k=f(a++);

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

  }

  答案:D

  12.6 以下程序的输出结果是

  A) 1

  B) 2

  C) 7

  D) 10

  int m=13;

  int fun2(int x,int y)

  { int m=3;

  return (x*y-m);

  }

  main()

  { int a=7,b=5;

  printf("%d\\n",fun2(a,b)/m);

  }

  答案:B

  12.7 C语言中,形参的缺省的存储类说明是

  A) auto(自动)

  B) static(静态)

  C) register(寄存器)

  D) extern(外部)

  答案:A

  12.8 以下叙述中不正确的是

  A) 一个变量的作用域完全取决于变量定义语句的位置。

  B) 全局变量可以在函数以外的任何部位进行定义。

  C) 局部变量的“生存期”只限于本次函数调用,因此不可能将局部变量的运算结果保存至下一次调用。

  D) 一个变量说明为static存储类是为了限制其它编译单位的引用。

  答案:C

读书人网 >二级考试

热点推荐