c语言题目求助

2024-11-25 19:53:21
推荐回答(1个)
回答1:

排序函数有问题,冒泡排序交换数据时要用j而不是i, 代码如下:

#include 
#include 

void fun(int a[], int n)
{
int i, j, k;
for (i = 0; i for (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");
}

运行结果: