2 u013252644 u013252644 于 2014.03.02 12:44 提问

在devc++环境下,编译错误,请帮忙查找问题

#include
#include

int search(int a[10],int x)

{ int j;

for(j=0;j<10;j++)
{
 if(a[j]==x)
   return j++;
 else
   continue;
 }
   return 0;

}

main()
{
int a[10];
int i;
int target,b;
for(i=0;i<10;i++)
scanf("%d",&a[i]);

printf("please input the number:");
scanf("%d",&target);
b=search(a[10],target);
if(b==0)
printf("no this record");
else
printf("%d",b);

system("pause");

}

1个回答

liuyy2007
liuyy2007   2014.03.04 17:21

第28行 :b=search(a[10],target);
其中的a[10]改成a。
对数组而言,数组名就是它的起始地址,a[10]代表数组中的一个值,而且还是越界的。。。。
函数定义int search(int a[10],int x),其中的a[10]可以写成*a, a[],结果一样的。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!