C言語のプログラミング-nの数値を並べ替えるためのポインター選択方法

コードエリア

#include<stdio.h>
#define N 5  //此处可以自由设定排序的个数
void sort(int *p,int n)
{
 int i,j,k,t;
 for(i=0;i<n-1;i++)
 {
  k=i;
  for(j=i+1;j<n;j++)
  {
  if(*(p+j)>*(p+k))   //可以改变大于号,然后改变排序后的结果
  k=j;
  }
  if(k!=i)
  {
  t=*(p+i);
  *(p+i)=*(p+k);
  *(p+k)=t;
  }
 }
}

main()
{
 int i,j;
 int a[N],*p=a;
 printf("input N numbers\n");
 for(p=a;p<a+N;p++)
 {
  scanf("%d",p);
 }
 p=a;   //一定要重新指回
 sort(p,N);
 printf("now,these numbers are from big to small\n");
 for(p=a;p<a+N;p++)
 {
 printf("%d  ",*p);
 }
}
公開された57件の元の記事 気に入りました54 訪問2356

おすすめ

転載: blog.csdn.net/September_C/article/details/104959569