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

请问数组作为形式参数时,长度未知,可以设为n吗,该怎么设置

#include <stdio.h>

int n;//设n为该数组的长度

int getIndex(int arr[n],int value)

{

int i,j,index;

int j=0;int index=-1;

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

{

if(arr[i]==value)

{ j++;printf("第%d个目标的下标为%d ",j,i);}

if(j>0){index=j;}

}

return index;

}

第2行和第3行 应该怎么设置n,是去掉第二行,然后直接int arr[int n] 还是像现在这样设置?

如果像这样设置,在主函数中要使用这个自定义函数,是可以直接声明arr[5]使用

还是要先声明n=5再使用

正在回答

3 回答

在你给你的n赋值之前,是不能用他来定义数组的。但你可以定义数组时不定义其长度。然后函数里可以通过一个输入函数scanf来给n赋值,就可以确定你的for循环的长度了。

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

初心者Kay 提问者

好的 谢谢
2018-07-01 回复 有任何疑惑可以回复我~

或者可以先通过输入函数scanf给n赋值。再用n定义数组的长度。

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

如果像这样设置,在主函数中可以直接声明arr[5]使用还是要先声明n=5

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

举报

0/150
提交
取消

请问数组作为形式参数时,长度未知,可以设为n吗,该怎么设置

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