c语言用函数排序整型数组 c语言用函数实现排序

C语言. .编写一个Sort函数,完成对整型数组元素升序排列。

#include stdio.h

成都网站建设、网站制作服务团队是一支充满着热情的团队,执着、敏锐、追求更好,是创新互联的标准与要求,同时竭诚为客户提供服务是我们的理念。创新互联公司把每个网站当做一个产品来开发,精雕细琢,追求一名工匠心中的细致,我们更用心!

void sort(int a[], int n) {//选择排序

int i,j,k,t;

for(i = 0; i  n - 1; ++i) {

k = i;

for(j = k + 1; j  n; ++j) {

if(a[k]  a[j]) k = j;

}

if(k != i) {

t = a[i];

a[i] = a[k];

a[k] = t;

}

}

}

int main() {

int a[] = {21,16,30,21,8,19,33,26,28,27,24,50,13,12};

int i,n = sizeof(a)/sizeof(a[0]);

printf("排序前:\n");

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

printf("%d ",a[i]);

printf("\n");

sort(a,n);

printf("排序后:\n");

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

printf("%d ",a[i]);

printf("\n");

return 0;

}

用C语言写一个子函数完成对一整型数组从大到小的排序

#includestdio.h

#includestdlib.h

int main()

{

void sort(int x[],int n);

int *p,i;

int N;

printf("please input the total num:");

scanf("%d",N);

int a[N];

printf("please input the %d num:\n",N);

p=a;

for(i=0;iN;i++)

scanf("%d",p++);

p=a;

sort(p,N);

for(p=a,i=0;iN;i++)

{printf("%d ",*p);p++;}

system("pause");

}

void sort(int x[],int n)

{

int i,j,k,t;

for(i=0;in-1;i++)

{k=i;

for(j=i+1;jn;j++)

if(x[j]x[k])

k=j;

if(k!=i)

{t=x[i];x[i]=x[k];x[k]=t;}

}

}

编写函数,使用选择排序法对数组进行排序(用C语言)

#include stdio.h

#include stdlib.h

#include time.h

int main(void)

{

int a[10],i,j,tmp,b;

srand(time(NULL));

for(i=0;i10;i++)

a[i]=rand()%100;

for(i=0;i10;i++)

printf("%3d",a[i]);

printf("\n");

for(i=0;i9;i++)

{

tmp=i;

for(j=i+1;j10;j++)

 {

if(a[tmp]a[j])

tmp=j;

 }

if(i!=tmp)

{

b=a[tmp];

a[tmp]=a[i];

a[i]=b;

}

}

for(i=0;i10;i++)

printf("%3d",a[i]);

printf("\n");

return 0;

}

随机产生数组中的元素, 更合理一些。 百科中有各种版本。

C语言作业:编写程序实现整型数组的排序

#includestdio.h

#includestdlib.h

#define shengxu 0

void RandonArray(int a[],int n)

{

int i;

srand(time(NULL));

for(i=0;in;i++)

{

a[i]=rand();

}

}

void SortArray(int a[],int n)

{

int i,j,t;

for(i=0;in-1;i++)

{

for(j=0;jn-i-1;j++)

{

if(shengxu)

{

if(a[j]a[j+1])

{

t=a[j+1];

a[j+1]=a[j];

a[j]=t;

}

}

else

{

if(a[j]a[j+1])

{

t=a[j+1];

a[j+1]=a[j];

a[j]=t;

}

}

}

}

}

void OutputArray(int a[],int n)

{

int i;

for(i=0;in;i++)

{

printf("%d,",a[i]);

}

}

int main()

{

int i,n,*a;

char msg[]={-56,-25,-71,-5,-78,-55,-60,-55,-93,-84,-57,-21,-72,-8,-50,

-46,50,48,48,-78,-58,-72,-69,-93,-95,0};

printf("%s\n\n",msg);

printf("请输入要随机产生的数组的元素个数:");

scanf("%d",n);

a=(int*)calloc(n,sizeof(int));

RandonArray(a,n);

printf("%s排序前数组各元素的值是:\n",shengxu ? "升序" : "降序");

OutputArray(a,n);

SortArray(a,n);

printf("\n%s排序后数组各元素的值是:\n",shengxu ? "升序" : "降序");

OutputArray(a,n);

free(a);

printf("\n");

system("PAUSE");

return EXIT_SUCCESS;

}


本文名称:c语言用函数排序整型数组 c语言用函数实现排序
网站路径:http://hbruida.cn/article/ddjicdc.html