有以下程序: #include <stdio, h>void sort(int a[] ,int n){ int i,j,t; for(i=0;i<n;i ++ ) for(j =i+ 1;j<n;j ++ )

admin2009-01-15  16

问题 有以下程序: #include <stdio, h>void sort(int a[] ,int n){  int i,j,t;     for(i=0;i<n;i ++ )            for(j =i+ 1;j<n;j ++ )                  if(a<a[j]){ t=a[1] ;a=a[j] ;a[j] =t; }main( ){  int aa[10] = {1,2,3,4,5,6,7,8,9,10} ,i;     sort(aa +2, 5);     for(i =0;i<10;i++) prinff("%d," ,aa);     prinff("\n");程序运行后的输出结果是(    )。

选项 A、1,2,3,4,5,6,7,8,9,10,
B、1,2,7,6,3,4,5,8,9,10,
C、1,2,7,6,5,4,3,8,9,10,
D、1,2,9,8,7,6,5,4,3,10,

答案4

解析 sort函数的功能是将给定的数由大到小排序。函数调用sort(aa+2,5);中的实参 aa+2是aa[2]的地址,将其传给形参a[],使得形参中封a[0]的值为主函数中aa[2]的值,即3;实参5传给形参n,在sort函数中用于指定参加排序的5个数,从aa[2]到aa[6],所以本题输出的结果是:1,2,7,6,5,4,3,8,9,10,
转载请注明原文地址:https://jikaoti.com/ti/eXK0FFFM
0

最新回复(0)