问题描述
- 在devc++环境下,编译错误,请帮忙查找问题
-
#include
#includeint 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");
}
解决方案
第28行 :b=search(a[10],target);
其中的a[10]改成a。
对数组而言,数组名就是它的起始地址,a[10]代表数组中的一个值,而且还是越界的。。。。
函数定义int search(int a[10],int x),其中的a[10]可以写成*a, a[],结果一样的。
时间: 2025-01-27 01:55:12