冒泡排序的效率最差。仅供学习时使用。呵呵
#define N 50
#include<stdio.h>
#include<conio.h>
#include<windows.h>
sort(int a[]);
void main()
{
int a[N],i,num,m;
system("cls");
printf("Enter number of shu zu=");
scanf("%d",&num);
printf("They are:");
for(i=0;i<num;i++)
scanf("%d",&a[i]);
m=sort(a);//sort()函数没有返回值
printf("Pai lei wei:%d\n",m);
getch();
}
sort(int a[])
{
int i,j,num,temp;
for(i=0;i<num;i++)//num未赋初始值
for(j=0;j<num-i-1;j++)
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
你这个程序无法实现数据的排序后输出,因为在m=sort(a);这个语句只能接收一个数据,无法接收一个数组,可以用指针返回值类型实现