#include <iostream>
#include <cstdlib>
using namespace std;
void bubblesort(int A[], int n)
{
bool sorted = false;
while (!sorted)
{
sorted = true;
for (int i = 1; i < n; i++)
{
if (A[i - 1] > A[i])
{
swap(A[i - 1], A[i]);
sorted = false;
}
}
n--;
}
}
int main(void)
{
int n = 0;
int A[5];
for (int i = 0; i <= 4; i++)
{
cin >> A[i];
}
bubblesort(A[5], 5);
return 0;
}
大家好,在调试上面的这段程序时,我发现编译器报错:
"int" 类型的实参与 "int *" 类型的形参不兼容。[33,16]
个人感觉应该是数组定义的问题,想问下如何解决?谢谢大家!
bubblesort(A[5], 5);
语法不对, 写 bubblesort(A, 5);
传的参数不对,你不能传类型阿,你传变量阿。 bubblesort(A, 5);
传递A[5]相当于传递A数组的第五个元素值;int A[5]是定义一个有五个整数的数组。况且A[5]也是越界访问
也许对你有帮助:https://blog.csdn.net/it_xiangqiang/category_10581430.html