本帖最后由 jackz007 于 2024-4-18 22:06 编辑 #include <stdio.h>
// 函数只要定义在前,调用在后,在调用前就不用特意声明
void sort(int * x , int n)
{
int i , j , k , t ;
for(i = 0 ; i < n - 1 ; i ++)
{
k = i ;
for(j = i + 1 ; j < n ; j ++) if(* (x + j) > * (x + k)) k = j ;
if(k != i)
{
t = * (x + i) ;
* (x + i) = * (x + k) ;
* (x + k) = t ;
}
}
}
int main(void)
{
int i , * p , a[10] ;
printf("please enter 10 integer numbers:") ;
for(p = a , i = 0 ; i < 10 ; i ++) scanf("%d" , p + i) ;
sort(p , 10) ;
printf("%d" , * p) ;
for(i = 1 ; i < 10 ; i ++) printf(", %d" , * (p + i)) ;
printf("\n") ;
return 0 ;
}
编译、运行实况:D:\[exercise]\C>g++ -o x x.c
D:\[exercise]\C>x
please enter 10 integer numbers:7 3 8 5 1 2 6 9 4 0
9, 8, 7, 6, 5, 4, 3, 2, 1, 0
D:\[exercise]\C>
|