模拟试题

3773考试网计算机等级考试模拟试题正文

2014年3月全国计算机二级C语言上机模拟试题五十一2

来源:2exam.com 2013-11-12 16:03:22

 解题思路: 

  本题是统计字符串中包含的单词个数。 

  第一处:单词个数用变量n来统计,当当前字母不是空格且flag状态标志为0时,则单词数就加1,将状态标志flag置为1,所以应填:n++。 

  第二处:当当前字符是空格时,flag状态标志置0,所以应填:0。 

  第三处:到字符串下一个位置,所以应填:s++。 

  *************************************************** 

  给定程序MODI1.C中函数 fun 的功能是:从n(形参)个学生的成绩中统计出低于平均分的学生人数,此人数由函数值返回,平均分存放在形参aver所指的存储单元中。 

  例如,若输入 8 名学生的成绩:80.5 60 72 90.5 98 51.5 88 64 

  则低于平均分的学生人数为: 4 (平均分为:75.5625 )。 

  请改正程序中的错误,使它能统计出正确的结果。 

  注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 

  给定源程序: 

  #include  

  #define N 20 

  int fun ( float *s, int n, float *aver ) 

  { float ave, t = 0.0 ; 

  int count = 0, k, i ; 

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

  t = s[k] ; 

  ave = t / n ; 

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

  if ( s[ i ] < ave ) count++ ; 

  *aver = Ave ; 

  return count ; 

  } 

  main() 

  { float s[30], aver ; 

  int m, i ; 

  printf ( "\nPlease enter m: " ) ; scanf ("%d", &m ) ; 

  printf ( "\nPlease enter %d mark :\n ", m ) ; 

  for( i = 0 ; i < m ; i++ ) scanf ( "%f", s + i ) ; 

  printf( "\nThe number of students : %d \n" , fun ( s, m, &aver ) ); 

  printf( "Ave = %f\n", aver ) ; 

  }

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