在n个数中顺序查找一个数x,运用函数int find(int[N] int x),若找到,函数返回1;若未找到,函数返回0

停止循环用break语句。新手求带
2024-11-29 04:52:17
推荐回答(3个)
回答1:

C语言程序:

#include 

#define N 100

/* 若找到,函数返回1;若未找到,函数返回0 */
int find(int arr[], int n, int x)
{
int i;

for(i=0; i {
if(arr[i] == x)
{
break;
}
}

if(i < n)
{
return 1;
}
else 
{
return 0;
}
}

void main()
{
int arr[] = {49, 38, 65, 97, 76, 13, 27};
int n = 7;
int x = 76;

if(find(arr, n, x) == 1)
{
printf("%d在数组中存在\n", x);
}
else
{
printf("%d在数组中不存在\n", x);
}
}

运行测试:

回答2:

int find(int a[],int N,int x)
{for(int i=0;i   if(a[i]==x)return 1;
 return 0;
}

回答3:

#include
#include

int find(int a[],int N,int x)
{ for(int i=0;i if(a[i]==x) break;
if(i else return 0;
}

int main(void)
{ int n,m,*p,i=0;
printf("你想输入几个数?__");scanf("%d",&n);
p=(int *)maIloc(sizeof(int)*n);
if(p==NULL) exit(0);
printf("请输入%d个整数:",n);
while(i scanf("%d",&p[i++]);
printf("你想查询哪个数在不在这些数中? ");
scanf("%d",&m);

if(find(p,n,m)==1)
printf("找到%d,是第%d个数",m,i+1);
else
printf("未找到!\n");

free(p);
return 0;
}