编写一个函数,在一数组array[ ]中查找一个数x,若找到,则返回其序号(

编写一个函数,在一数组array[]中查找一个数x,若找到,则返回其序号(序号从1开始),若没找到,则返回-1。函数的形式为intsearch(intarray[],in... 编写一个函数,在一数组array[ ]中查找一个数x,若找到,则返回其序号(序号从1开始),若没找到,则返回-1。函数的形式为 int search (int array[ ],int n,int x) 展开
 我来答
暴风一号VBS
2016-06-16 · TA获得超过215个赞
知道答主
回答量:80
采纳率:100%
帮助的人:25.5万
展开全部

#include <stdio.h>

#include <stdlib.h>

int search (int array[],int n,int x)/*第一个参数是数组名,第二个参数是要遍历多少元素,第三个参数是要查找的值*/

{

    int i = 0;

    while(i<=n)/*遍历的次数要小于设定的值(第二个参数)*/

    {

        if(array[i] == x)/*找到了符合条件的值*/

        {

         return (i+1);/*因为数组下标是从0开始的,而你需要的序列从1开始,所以+1*/

        }

        else

        {

         i++;/*继续循环*/

        }

    }

    return -1;/*全部遍历完了没找到,返回-1*/

}

int main()

{

    int a[4] = {0,3,15,68};

    int b = search(a,4,68);/*查找68这个值*/

    printf("%d\n",b);/*输出所在的序列,没有返回-1*/

    system("pause");

    return 0;

}

运行结果:

追问
/*是什么意思?
追答
注释
旅初彤2B
2016-06-16 · TA获得超过2.6万个赞
知道大有可为答主
回答量:4.4万
采纳率:65%
帮助的人:5490万
展开全部
#include<stdio.h>
void main(){
int search (int array[ ],int n,int x){
int i;
for(i=0;i<=sizeof(array)/sizeof(array[0]);i++)
if(array[i]==x){
n = i +1;
}else{
n=-1
}
}
reurn n;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2016-06-16 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
int search (int array[ ],int n,int x)
{int i;
for(i=0;i<n;i++)
if(array[i]==x)return (i+1);
return -1;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式