为了账号安全,请及时绑定邮箱和手机立即绑定

当我自己用vc写了一次是出现了问题

#include <stdio.h>

void replace(int arr[],int value)

{

int max = arr[0];

int index;

int i;

for( i=1;i<5;i++ )

{

if(max<arr[i])

{

max = arr[i];

index = i;

}

}

arr[index]=value;

}

int main()

{

int arr1[] = {10,41,3,12,22};

int arr2[] = {1,2,3,4,5};

int i;

replace(arr1[],arr2[0]);

for( i=0,i<5,i++ )

{

printf("%d\n",arr1[i]);

}

getchar();

return 0;

}



下面是报错 实在找不到了 好烦

--------------------Configuration: 数组作为函数参数 - Win32 Debug--------------------

Compiling...

sourcefile.cpp

E:\我的C程序\数组作为函数参数\sourcefile.cpp(22) : error C2059: syntax error : ']'

E:\我的C程序\数组作为函数参数\sourcefile.cpp(23) : error C2143: syntax error : missing ';' before ')'

E:\我的C程序\数组作为函数参数\sourcefile.cpp(23) : error C2143: syntax error : missing ';' before ')'

执行 cl.exe 时出错.


正在回答

2 回答

我并不知道你这程序具体目的,我只能找出语法错误来

replace(arr1[],arr2[0]);

for( i=0,i<5,i++ )

这两行改为

replace(arr1,arr2[0]);

for(i=0;i<5;i++)

0 回复 有任何疑惑可以回复我~

都是语法错误 syntax error,楼主好好加油

22行,数组作参数直接写数组名就可以了,把'[]'去掉,因为数组作形参会退化为指针,这里实际传的是数组首地址,即第一个元素的地址

23行,for循环中间是';'相隔的,里面是三条语句,你写的 ','

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

当我自己用vc写了一次是出现了问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信