冒泡排序c语言调用函数 冒泡排序c程序

1. 编写冒泡排序和选择排序的程序,主函数中编写菜单调用排序函数。C语言

//C语言示例代码如下

我们提供的服务有:成都做网站、成都网站建设、微信公众号开发、网站优化、网站认证、汉源ssl等。为上千多家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的汉源网站制作公司

#include stdio.h

#define N 10

//冒泡排序(升序)

void bubble_sort(int a[],int n)

{

int i,j;  //j表示趟数,i表示第j趟两两比较的次数

int tmp; //临时变量

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

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

{

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

{

tmp=a[j];

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

a[j+1]=tmp;

}

}

}

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

void select_sort(int *array,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(array[k]  array[j]) //如果发现比当前最小元素还小的元素,则更新记录最小元素的下标k

k=j;

}

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

if(k != i)

{

tmp=array[k];

array[k]=array[i];

array[i]=tmp;

}

}

}

int main()

{

int arr[N];

int i;

printf("输入数组元素: ");

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

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

bubble_sort(arr,N);  //调用冒泡排序函数

printf("输出排序后的数组元素: ");

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

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

printf("\n输入数组元素: ");

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

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

select_sort(arr,N);  //调用选择排序函数

printf("输出排序后的数组元素: ");

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

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

printf("\n");

return 0;

}

c语言应用函数调用对n个数冒泡排序实现升序排列的程序编写

#includestdio.h

int fun(int *a,int n);

int main(void)

{ int a[30],n,i;

printf("n=");

scanf("%d",n); /*输入参与排序的数字的个数n*/

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

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

scanf("%d",a[i]); /*依次输入这n个数*/

}

fun(a,n); /*调用自定义函数进行冒泡排序*/

for(i=0;in;i++) /*输出排序后的结果*/

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

printf("\n");

}

int fun(int *a,int n)

{ int i,j,t;

for(i=0;in-1;i++) /*冒泡排序*/

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

if(a[j]a[j+1]) { t=a[j];a[j]=a[j+1];a[j+1]=t; }

/*如果后面的数小于前面的数,则将他俩交换次序*/

}

C语言编程——冒泡排序法。要求:由主函数调用排序子函数,对n个整数进行从小到大的排序,谢了

#includevoid sort(int a[],int n){ int i; int j; for(i=1;ia[j+1]) //从小到达,前面的比后面的大,则互换。 { int temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } }}int main(){int a[10]={1,3,5,7,9,2,4,6,8,10};sort(a,10);int i;for(i=0;i10;i++){printf("%d ",a[i]);}getchar();return 0;}C语言编程——冒泡排序法。要求:由主函数调用排序子函数,对n个整数进行从小到大的排序,谢了

C语言冒泡排序算法 要用函数

从小到大排序

void paixu(double a[],int N)

{

double temp;

int i,j;

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

{

for(j=i+1;jN-i;j++)

{

if(a[i]a[j])

{temp=a[i];a[i]=a[j];a[j]=temp;}

}

}

}

把楼上的改改,减少浪费,欢迎拍砖


本文题目:冒泡排序c语言调用函数 冒泡排序c程序
分享URL:http://scyanting.com/article/doscehd.html