由主函数调用排序子函数,对n个整数进行从小到大的排序,如何用C语言冒泡排序法编程?

如题所述

#include<stdio.h>
void sort(int a[],int n)
{
int i;
int j;
for(i=1;i<n;i++) //n个程序 排n-1次
{
for(j=0;j<n-i;j++)
{
if(a[j]>a[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;i<10;i++)
{
printf("%d ",a[i]);
}
getchar();
return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

由主函数调用排序子函数,对n个整数进行从小到大的排序,如何用C语言...
include<stdio.h> void sort(int a[],int n){ int i;int j;for(i=1;i<n;i++) \/\/n个程序 排n-1次 { for(j=0;j<n-i;j++){ if(a[j]>a[j+1]) \/\/从小到达,前面的比后面的大,则互换。{ int temp = a[j];a[j] = a[j+1];a[j+1] = temp;} } } } i...

C语言编程——选择排序法,要求:由主函数调用排序子函数,对n个整数进 ...
for(int i=0;i<n;i++) \/\/进行n个循环,每次选出剩下的最小的数,如第一次选出n个数中最 for(int j=i+1;j<n;j++)\/\/小的那个,如a[8],放入a[0],而将a[0]原来的值放入a[8].第二次 if(a[j]<a[i]) \/\/就从a[1]到a[n-1]中找出最小的数放入a[1],以此类推。

...编程:将输入的N个整数采用冒泡排序按照从小到大的顺序排列并且输出...
void BubbleSort(int L[]) { \/\/ 对顺序表L作冒泡排序 int i,j,fini = 0;for (i = 1; i < n && !fini; i++) { fini = 1;for (j = 1; j <= n-i; j++)if (L[j] > L[j+1]) { L[0] = L[j];L[j] = L[j+1];L[j+1] = L[0];fini = 0;} } } ...

C语言编程题 输入n个整数 按照从小到大的顺序排列
int main(){ int n,a[100],i=0,j,temp;printf("请输入数的个数:");scanf("%d",&n);printf("\\n请输入要排序的数:\\n");for(i=0;i<n;i++)scanf("%d",&a[i]);for(i=0;i<n;i++)for(j=i;j<n;j++)if(a[j]<a[i])temp=a[i],a[i]=a[j],a[j]=temp;printf...

c语言。编写一个冒泡排序算法s使用指针将n个整型数据按升序排序?
include<stdio.h> int main(){ int a[111],t;int *p=a;int n;scanf("%d",&n);for(p=a;p<a+n;p++)scanf("%d",p);p=a;for(int i=0;i<n;i++)for(int j=0;j<n-1-i;j++)if(p[j]>p[j+1]){ t=p[j];p[j]=p[j+1];p[j+1]=t;} for(int i=0;i<n;i...

C语言:编写一个程序用冒泡排序实现升序排列
1、首先打开一个空白的C语言文件,首先先定义一组待排序的数列以及各个变量,接着就是用来处理排序的逻辑:2、冒泡排序的逻辑是一组数从第一个数值开始,如果相邻两个数的排列顺序与期望不同,则将两个数的位置进行交换,重复这样的过程直到最后一个数不需要交换则排序完成,如果有N个数需要排序,则...

C语言:编写函数用冒泡排序法对数组中的数据进行从小到大的排序.
int i,j,temp;for(i=0;i<n-1;i++){for(j=0;j<n-1-i;j++){if(a[j]>a[j+1]){temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}之间写这个

编写一个对n个数进行排序(由小到大)的函数,在main()函数中输入n个数...
自定义函数sort(int *p, int n),功能是对n个数排序。在main函数中,调用它,对输入的任意个数排序。include<stdio.h> int sort(int*p,int n){ int i,j,t;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(p[i]>p[j]){ t=p[i];p[i]=p[j];p[j]=t;} } int main(){...

...用冒泡法对主函数中的一个数组进行从小到大的排序;
楼上的答案加个 define N 5 void sort(int *a){ int i,j,temp;最后加点 for(i=0;i<N;i++)printf("%4d",a[i]);} void main(){ int a[ ]={36,77,2,9,44} sort(a);}

c语言如何输入一个正整数N,再输入N个整数,按从小到大的顺序输出?
;num[j+1]=temp;} } } \/\/输出排序数组中所有元素的值,这里我使用每行10个来换行输出 printf("数组num从小到大的排序是:\\n");for(i=0;i<N;i++){ count++;if(count!=0&&count%10!=0&&count!=N){ printf("%d,",num[i]);}else { printf("%d\\n",num[i]);} } } ...

相似回答