Online Compiler C

#include <stdio.h> void sort_array(int size, int a[]) { int i, j, temp; for (i = 0; i < size; i++) { for (j = 0; j < size - 1 - i; j++) { if (a[j] > a[j + 1]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } } int main() { sort_array(5,1,2,3,4,5);return 0; }
这段代码定义了一个冒泡排序函数 `sort_array`,但在 `main` 函数中调用它时,传递参数的方式不正确。`sort_array` 期望接收一个整数 `size` 和一个数组 `a`,但你在调用时直接传入了多个独立的整数,而不是一个数组。

- 检查 `main` 函数中调用 `sort_array` 的语法。你需要先定义一个数组,然后将数组名作为参数传递,而不是直接列出数字。
- 注意 `sort_array` 的第二个参数类型是 `int a[]`,这表示它需要一个数组变量,而不是多个单独的值。