计算机等级 百分网手机站

计算机等级考试二级笔试卷含答案(2)

时间:2018-05-11 16:48:50 计算机等级 我要投稿

计算机等级考试二级笔试卷(含答案)

  ggg(x)

  float x;

  { printf(" %d",x*x);}

  则函数的类型

  A) 与参数x的类型相同

  B) 是void

  C) 是int

  D) 无法确定

  (28) 设有如下枚举类型定义:

  enum language { Basic=3,Assembly,Ada=100,COBOL,Fortran};

  枚举量Fortran的值为

  A) 4

  B) 7

  C) 102

  D) 103

  (29) 若有以下说明和语句,请选出哪个是对c数组元素的正确引用

  int c[4][5], (*cp)[5];

  cp=c;

  A) cp+1

  B) *(cp+3)

  C) *(cp+1)+3

  D) *(*cp+2)

  (30) 标准函数 fgets(s, n, f) 的功能是

  A) 从文件f中读取长度为n的`字符串存入指针s所指的内存

  B) 从文件f中读取长度不超过n-1的字符串存入指针s所指的内存

  C) 从文件f中读取n个字符串存入指针s所指的内存

  D) 从文件f中读取长度为n-1的字符串存入指针s所指的内存

  (31) 设有如下一段程序:

  int *var,ab;

  ab=100

  var=&ab;

  ab=*var+10;

  执行上面的程序后,ab的值为

  A) 120 B) 110 C) 100 D) 90

  (32) 以下程序段给数组所有的元素输入数据,请选择正确答案填入。

  #include

  main()

  { int a[10],i=0;

  while(i<10) scanf("%d",________ );

  ┇

  }

  A) a+(i++)

  B) &a[i+1]

  C) a+i

  D) &a[++i]

  (33) 设有如下的程序段:

  char str[ ]="Hello";

  char *ptr;

  ptr=str;

  执行上面的程序段后,*(ptr+5)的值为

  A) 'o'

  B) ''

  C) 不确定的值

  D) 'o'的地址

  (34) 在宏定义 #define PI 3.14159中,用宏名PI代替一个

  A) 单精度数 B) 双精度数 C) 常量 D) 字符串

  (35) 字符(char)型数据在微机内存中的存储形式是

  A) 反码 B) 补码 C) EBCDIC码 D) ASCII码

  (36) 执行下面的程序段

  int x=35;

  char z='A';

  int b;

  B=((x&15)&&(z<'a'));

  后,B的值为

  A) 0 B) 1 C) 2 D) 3

  (37) C语言规定,程序中各函数之间

  A) 既允许直接递归调用也允许间接递归调用

  B) 不允许直接递归调用也不允许间接递归调用

  C) 允许直接递归调用不允许间接递归调用

  D) 不允许直接递归调用允许间接递归调用

  (38) 假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式 的表达式是

  A) 1/a*b*c

  B) 1/(a*b*c)

  C) 1/a/b/(float)c

  D) 1.0/a/b/c

  (39) 若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是

  A) pb=&x B) pb=x; C) *pb=&x; D) *pb=*x

  (40) 设有

  static char str[ ]="Beijing";

  则执行

  printf("%d ", strlen(strcpy(str,"China")));

  后的输出结果为

  A) 5 B) 7 C) 12 D) 14

  (41) 设有如下程序:

  #include

  main()

  { int **k, *j, i=100;

  j=&i; k=&j;

  printf("%d ", **k);

  }

  上面程序的输出结果是

  A) 运行错误 B) 100 C) i的地址 D) j的地址

  (42) 设 a=5, b=6, c=7, d=8, m=2, n=2, 执行

  (m=a>b)&&(n=c>d)

  后n的值为

  A) 1 B) 2 C) 3 D) 4

  (43) 下面函数的功能是

  sss(s, t)

  char *s, *t;

  { while((*s)&&(*t)&&(*t++== *s++));

  return(*s-*t);

  }

  A) 求字符串的长度 B) 比较两个字符串的大小

  C) 将字符串s复制到字符串t中 D) 将字符串s接续到字符串t中

  (44) 请选出以下程序的输出结果

  #include

  sub(x,y,z)

  int x, y, *z;

  { *z=y-x; }

  main()

  { int a, b, c;

  sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);

  printf("%d,%d,%d ", a,b,c);

  }

  A) 5,2,3

  B) -5,-12,-7

  C) -5,-12,-17

  D) 5,-2,-7

  (45) 下面程序的输出结果是

  #include

  main()

  { int i=2,p;

  p=f(i,i+1);

  printf("%d",p);

  }

  int f(a,b)

  int a,b;

  { int c;

  if(a>b) c=1;

  else

  if(a==b) c=0;

  else c=-1;

  return(c);

  }

  A) -1 B) 0 C) 1 D) 2

  (46) 请选出以下程序段的输出结果

  #include

  #define MIN(x,y) (x)<(y)? (x):(y)