谁能帮我解释下什么是冒泡算法的函数啊
用C语言写一个冒泡算法的函数
----------------解决方案--------------------------------------------------------
这样的算法到摆渡里面看下一大堆
----------------解决方案--------------------------------------------------------
他就是两两交换,算法到处都有
----------------解决方案--------------------------------------------------------
这个算不算是冒泡的啊!!!
#include "stdio.h"
void main()
{ int i, j, temp, arr_num[5] = {23, 9, 90, 250, 16};
for(i=3;i>=0;i--)
for(j=4;j>=4-i;j--)
{
if(arr_num[j]<arr_num[j-1]) *******
temp=arr_num[j]; *******
arr_num[j]=arr_num[j-1]; *******
arr_num[j-1]=temp; *******
}
printf("\n排序后的数组");
for(i=0;i<5;i++)
printf("\n%d", arr_num[i]); *******
getchar(); *******
}
有没有高手帮我解释下带"*******"的几句程序啊!!!
谢谢了
----------------解决方案--------------------------------------------------------
看看这个怎样啦:
#include<stdio.h>
#define N 8
main()
{
int i,j,k,temp;
int a[N];
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=N-1;i>0;i--)
for(j=0;j<i;j++)
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
for(i=0,i<N;i++)
{
if(i%5==0)
printf("%5d",a[i]);
}
}
----------------解决方案--------------------------------------------------------
看看这个代码行不?
#include <stdio.h>
#define N 5
void sorted(int a[],int n);
void sorted(int a[],int n)
{
for (int i=1;i<n;i++)
for (int 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;
}
}
for (i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
}
void main()
{
int a[N],i;
printf("Enter the array:\n");
for (i=0;i<N;i++)
{
printf("Enter the %dth number:",i+1);
scanf("%d",a+i);
}
printf("********print the before array*****\n");
for (i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
printf("*******print the after array*******\n");
sorted(a,5);
}
----------------解决方案--------------------------------------------------------
看的懂不?
----------------解决方案--------------------------------------------------------