2013年计算机二级C语言上机题库七_第2页

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2013年4月7日
 改错题
  下列给定程序中函数fun的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。
  请改正程序中的错误,使程序能得出正确的结果。
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  试题程序:#include <stdio.h>
  #define N 20
  void fun(int a[], int n)
  {
  int i, j, t, p;
  for (j=0; j<n-1; j++)
  {
  /********found********/
  p = j
  for (i=j; i<n; i++)
  if(a[i] < a[p])
  {
  /********found********/
  p = i;
  t = a[p];
  a[p] = a[i];
  a[i] = t;
  }
  }
  }
  main()
  {
  int a[N] = {9, 6, 8, 3, -1}, i, m = 5;
  printf("??Dò?°£o");
  for (i=0; i<m; i++)
  printf("%d,", a[i]);
  printf("\n");
  fun(a, m);
  printf("??Dòoó£o");
  for (i=0; i<m; i++)
  printf("%d,", a[i]);
  printf("\n");
  }
  第1处:p = j应改为p=j;
  第2处:p = i应改为p=j;

相关文章