排序函数有问题,冒泡排序交换数据时要用j而不是i, 代码如下:
#include
#include
void fun(int a[], int n)
{
int i, j, k;
for (i = 0; ifor (j = 0; j if (a[j]>a[j + 1]) {
k = a[j];
a[j] = a[j + 1];
a[j + 1] = k;
}
}
}
int main()
{
int a[100], i;
for (i = 0; i<10; i++) {
scanf("%d", &a[i]);
}
for (i = 0; i<10; i++) {
printf("%d ", a[i]);
}
printf("\n");
fun(a, 10);
for (i = 0; i<10; i++) {
printf("%d ", a[i]);
}
system("pause");
}
运行结果: