c语⾔errorc2057,冒泡排序 error C2057:应输⼊常量表达式满意答案
以下是C语⾔中对数组的定义规则:
在C语⾔中使⽤数组必须先进⾏定义。⼀维数组的定义⽅式为:
类型说明符 数组名 [常量表达式];
其中,类型说明符是任⼀种基本数据类型或构造数据类型。
数组名是⽤户定义的数组标识符。
⽅括号中的常量表达式表⽰数据元素的个数,也称为数组的长度。
注意:不能在⽅括号中⽤变量来表⽰元素的个数,但是可以是符号常数或常量表达式。
正确的⽰例:
#define FD 5
main(){
int a[3+2],b[7+FD];
}
错误的例⼦:
main() {
int n=5;
int a[n];
c语言的冒泡排序算法}
解释:本例中⽤了变量来定义数组个数,应直接定义为:int a[5]
你的代码中也是⼀样,应改为:int A[10]=。。。
要不就在外边定义⼀个宏,在代码中引⽤。
#define N 10
main(){
int a[N]=。。。
}追问: 能帮我 把代码改⼀下吗?
谢谢
追答:修改如下,VC6通过。供参考:
#include
using namespace std;
//template //没有使⽤这个类,重写了swap函数
#define N 10 //N改为宏定义
void Swap(int *data1,int *data2) //新增函数
{
int temp;
temp=*data1;
*data1=*data2;
*data2=temp;
}
void bubblesort(int A[] ,int n) {
int i,j,last;
i=n-1;
while (i>0)
{
last=0;
for(j=0;j
//if(A[j=1]
if(A[j+1]

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。