2011年计算机等级二级C语言填空题练习题及答案解析(4)

发布时间:2011-09-16 共7页

导读:本套试题解析透彻,针对性和实用性很强,非常方便考生复习。

  8. 请补全main函数,该函数的功能是:如果数组aa的前一个元素比后一个元素小,则把它保存在数组bb中并输出 。

  main()

  {int i,n=0;

  int aa[N]={45,55,62,42,35,52,78,95,66,73};

  int bb[N];

  clrscr();

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

  if(aa[i]

  ___2___;

  printf("\n*** display bb ***\n");

  for(i=0;i

  printf("bb[%d]=- ",___3___);

  }

  第一处:N-1

  第二处:bb[n++]=aa[i]

  第三处:i,bb[i]

  解析:

  由于bb[ ]数组中实际元素个数未知,故需要边比较,边统计。

  n作为bb[ ]数组元素的个数,开始n=0,比较aa[ ]中相邻两个元素,满足条件则将其放入bb[]中,且个数加1。

  9. 已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体中,给定程序的功能是找出成绩最低的学生记录,通过形参返回主函数。

  typedef struct ss

  {char num[10]; int s; } STU;

  fun(STU a[], STU *s)

  {___1___ h;

  int i ;

  h = a[0];

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

  if ( a[i].s < h.s ) ___2___ = a[i];

  *s = ___3___ ;

  }

  第一处:STU

  第二处:h

  第三处:h

  解析:

  记住:要想通过函数的参数返回结果,该参数需要使用指针类型或者数组。

  求最小值,算法思想同19题。

  第三处:也可以是 s=&h 指针赋值。

  

百分百考试网 考试宝典

立即免费试用