C语言问题!!看谁说的有道理,谁有理谁就有分!
问题:利用顺序查找法从数组a的10个元素中对关键m进行查找。顺序查找法的思路是:从第一个元素开始,从前向后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。若找到,返回此元素的下标;若仍未找到,返回值-1。请通过参数间的传递来实现。
(我做了两次,基本一样,但是第一次运行没错误,第二次就有,什么原因?)
第一次:fun(int a[10])
{
int i,t=-1;
for(i=0;i<9;i++)
if(a[i]==7)
t=i;
return(t);
}
main()
{
int a[10];
int i,temp;
clrscr();
for(i=0;i<9;i++)
scanf("%d",&a[i]);
temp=fun(a);
printf("%d",temp);
}
第二次:fun(int a[10])
{
int i,t;
for(i=0;i<9;i++)
if(a[i]==7)
t=i;
else
t=-1;
return(t);
}
main()
{
int a[10];
int i,temp;
clrscr();
for(i=0;i<9;i++)
scanf("%d",&a[i]);
temp=fun(a);
printf("%d",temp);
}