#include
int main()
{
int a[10];
int i,j,k=0,key;
printf("请输入10的数字 ");
for(i=0;i<10;++i)
scanf("%d",a+i);
printf("请输入你要查找的数字 ");
scanf("%d",&key);
for(i=0;i<10;++i)
{
if(a[i]==key)
{
printf("你要的数字在%d\n",i);
k=1;
break;
}
}
if(k!=1)
printf("not found\n");
return 0;
}
#include
void Input(int * p, int q)
{
int i;
printf("请输入这十个数:(以空格隔开)\n");
for (i=0;i {
scanf("%d",&p[i]);
}
}
int Output(int * p, int q, int key)
{
int i;
for (i=0;i {
if(p[i]== key)
return i;
}
return 10;
}
int main (void)
{
int a[10];
int key;
int k;
Input(a,10);
printf("再输入一个待查找的数据\n");
scanf("%d",&key);
k = Output(a,10,key);
if(10==k)
printf("not found\n");
else
printf("%d\n",k);
}
这个主要在函数按值传递与按地址传递。
函数f中参数y传递的是主函数局部变量y的一个拷贝,所以在函数f中修改y并不会导致主函数中y的改变,而参数x传递的是主函数中局部变量x的地址,在函数f中对这个地址解引用,更改这个地址所存放变量的值就改变了主函数中的局部变量x。
具体你可以了解函数的按值传递与按地址传递。
using namespace std;
int main()
{
int i = 0;
int x[10];
for (i = 0; i < 10; i++)
{
scanf("%d", x + i);
}
int input;
// 输入查询整数
scanf("%d", &input)
for (i = 0; i < 10; i++)
{
if (input == x[i])
{
printf("下标为:%d", i);
system("pause");
return 1;
}
}
printf("not found");
system("pause");
return 0;
}