网站建设资讯

NEWS

网站建设资讯

c语言用函数从大到小 c语言用函数从大到小排序

C语言,输入一组数进行排序,由大到小排列,用自定义函数实现

给你一个直接插入排序

主要从事网页设计、PC网站建设(电脑版网站建设)、wap网站建设(手机版网站建设)、自适应网站建设、程序开发、微网站、微信小程序定制开发等,凭借多年来在互联网的打拼,我们在互联网网站建设行业积累了丰富的网站制作、成都网站建设、网络营销经验,集策划、开发、设计、营销、管理等多方位专业化运作于一体,具备承接不同规模与类型的建设项目的能力。

#include "stdio.h"

void InsertSort(int a[], int left, int right) {//对数组a从下标为left到right区域进行直接插入排序

int i, j, tmp;

for(i = left + 1; i = right; i++) {

for(j = i - 1, tmp = a[i]; j = left tmp a[j]; j++)

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

a[j + 1] = tmp;

}

}

void main( ) {

int i, n, a[100];

scanf("%d", n);

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

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

InsertSort(a, 0, n - 1);

printf("\n");

for(i = 0; i n; i++) printf("%d\t", a[i]);

}

C语言:给定一数组,包涵n个元素,设计功能函数,使用选择排序法,对其进行从大到小排序

//选择排序算法,按从小到大顺序

void select_sort(int *arr,int n)

{

int i,j,k;

int tmp;

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

{

k=i;  //开始一趟选择排序,假定第i个元素是后面n-i+1个未排序的元素中最小的元素

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

{

if(arr[k]  arr[j]) //如果发现比当前最小元素还小的元素,则更新记录最小元素的下标k

k=j;

}

//如果最小元素的下标不是后面n-i+1的未排序序列的第一个元素,则需要交换第i个元素和后面找到的最小元素的位置

if(k != i)

{

tmp=arr[k];

arr[k]=arr[i];

arr[i]=tmp;

}

}

}

C语言:输入5个数,用调用函数的方法,从小到大排序 用简单点的

#includestdio.h

void sort(float *a, int n)

{

int i,j,tmp;

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

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

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

{

tmp = a[j];

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

a[j+1] = tmp;

}

}

void main()

{

float a[5];

int i;

printf("请输入五个数(逗号隔开):");

scanf("%f,%f,%f,%f,%f",a[0],a[1],a[2],a[3],a[4]);

sort(a,5);

printf("排序后为:");

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

printf("%.2f ",a[i]);

printf("\n");

}

或者三个数的。

void sort(int *a, int *b, int *c)

{

int tmp;

if(*a*b){

tmp = *b;

*b = *a;

*a = tmp;

}

if(*a*c){

tmp = *c;

*c = *a;

*a = tmp;

}

if(*b*c){

tmp = *c;

*c = *b;

*b = tmp;

}

return;

}

扩展资料:

C语言中没有预置的sort函数。如果在C语言中,遇到有调用sort函数,就是自定义的一个函数,功能一般用于排序。

一、可以编写自己的sort函数。

如下函数为将整型数组从小到大排序。void sort(int *a, int l)//a为数组地址,l为数组长度。

{  

int i, j;  

int v;    //排序主体

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

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

 

{          

if(a[i] a[j])//如前面的比后面的大,则交换。

     

{

         

v = a[i];

         

a[i] = a[j];

         

a[j] = v;

     

}

 

}

}

对于这样的自定义sort函数,可以按照定义的规范来调用。

二、C语言有自有的qsort函数。

功 能: 使用快速排序例程进行排序。头文件:stdlib.h

原型:

void qsort(void *base,int nelem,int width,int (*fcmp)(const void *,const void *));

参数:

1、待排序数组首地址。

2、数组中待排序元素数量。

3、各元素的占用空间大小4 指向函数的指针,用于确定排序的顺序,这个函数必须要自己写比较函数,即使要排序的元素是int,float一类的C语言基础类型。


名称栏目:c语言用函数从大到小 c语言用函数从大到小排序
URL网址:http://njwzjz.com/article/dohsgpo.html