㈠ 求c语言大神 题目:编写查找函数search(),实现如下功能。
#include <stdio.h>
int search(int arr[],int len,int num)//arr为序列,len为序列长度,num为要查找的数
{
int start,end,mid;
start=0;
end=len-1;
mid=(start+end)/2;
while(start<=end)
{
if(arr[mid]>num)
{
end=mid-1;
mid=(start+end)/2;
continue;
}
if(arr[mid]<num)
{
start=mid+1;
mid=(start+end)/2;
continue;
}
return mid+1;
}
return -1;
}
int main()
{
int a[100],i,m,num,pos;
printf("输入序列长度:");
scanf("%d",&m);
printf("输入一个长度为%d的有序序列:\n",m);
for(i=0;i<m;i++)
{
scanf("%d",&a[i]);
}
printf("输入你要查找的数:");
scanf("%d",&num);
pos=search(a,m,num);
if(pos==-1)
printf("未能在序列中找到你要查找的数。\n");
else
printf("你要查找的数在第%d个位置\n",pos);
return 0;
}
㈡ C语言 编写一个函数search(char str[ ],char ch),用于搜索数组str中
int ishave;
char string[],charch;
int search(char str[ ],char ch)
{
int i,length,xiabiao=0;
length = strlen(str);
for(i=0;i<length,xiabiao==0;i++)
{
if (str[i]==ch)
{xiabiao = i;}
}
return xiabiao;
}
int main()
{
printf("请输入字符串:\n");
scanf("%s",&string[]);
printf("请输入字符:\n");
scanf("%c",&charch);
ishave = search(string[],charch);
if (ishave==0)
{printf("字符串“%s”中没有“%c”这个字符,或者字符串“%s”中“%c”这个字符对应的元素的下标为“0”。\n",string[],charch,string[],charch);}
else
{printf("字符串“%s”中“%c”这个字符对应的元素的下标为“%d”。\n",string[],charch,ishave);}
return 0;
}
㈢ 用C语言编写搜索 SEARCH
搜索一个文件里,包含了后面几个文件里的单词和数目吗?
我资料里有联系方式
㈣ C语言 求search函数的原型 和用法
search是个模板函数,返回值由模板参数决定。
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。
㈤ 在c语言中什么意思void search( char s [], int n1, int n )
一个函数,返回值类型void(没有返回值盯睁磨),函数名称search,三个参数,凯斗第一个是字符串,早让参数名s,后两个为整型量,名为n1,n
㈥ C语言数组的查找函数
#include<stdio.h>
int main()
{
int a[5];
int i,max,min;
printf("input number:\n");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
max=a[0];
min=a[0];
for(i=0;i<5;i++){
if(a[i]>max)
max=a[i];
}
for(i=0;i<5;i++){
if(a[i]<min)
min=a[i];
}
for(i=0;i<5;i++){
printf("%d",a[i]);
printf(" ");
}
printf("\n");
printf("最大值为%d\n",max);
printf("最小值为%d\n",min);
return 0;
}
㈦ 用C语言写二分查找的代码!!!
推荐答案的 code 有问题,并没有考虑到若待查数的下标是 0 怎么办?所以若顺序表中不存在待查元素应该 return-1
加上主函数的最后两行调用两次查找函数很多余,代码显得不够简练。
建议改成:
#include<stdio.h>
#include<stdlib.h>
intSearch(int*a,intkey)
{
//在顺序表中折半查找key的数据元素。若找到,则函数值为
intlow=0,mid;//该元素的数组下标;否则为0。
inthigh=14;
while(low<=high)
{
mid=(low+high)/2;
if(key==a[mid])
returnmid;//找到待查元素
elseif(key<a[mid])
high=mid-1;//继续在前半区间进行查找
else
low=mid+1;//继续在后半区间进行查找
}
return-1;//顺序表中不存在待查元素
}
voidmain()
{
int*a,key,i;
intb[15]={0};
a=b;
printf("请自小到大输入15个整数: ");
for(i=1;i<=15;i++)
{
scanf("%d",&b[i-1]);
printf(" ");
}
printf("请输入你要查找的数: ");
scanf("%d",&key);
i=Search(a,key);
if(-1==i)
printf("你要查找的数不在目标数组中! ");
else
printf("你要查找的数的数组下标为%d ",i);
}
㈧ C语言关于search 的问题。本人是菜鸟,方便的话私聊。
(1)你定义是放在外面是全局变量,放在函数樱锋里面是局部变量啊!!
(2)你定义的时候设置search的形参是什么他的意枯颂晌思就是什么(long a[],int n,long x)
(3)就是复制的意思
(4)因为你定义pos是-1所以要加上1啊,大哥
(5)这是你的search函数的具体操作,不明白没锋在发消息。
你看行不
??
㈨ 求c语言大神 题目:编写查找函数search(),实现如下功能。
C代码和运行结果如下:
输入5,成功输出了其在给定数组中的下标为4,结果正确,望采纳~
附源码:
#include <stdio.h>
int search(int a[], int n, int x) { // 返拆槐回旅肆友数组a[]中x的下标
int i;
雹运 for (i = 0; i < n; i++) {
if (a[i] == x)
return i;
}
return -1; // 数组中没有x则返回-1
}
int main() {
int x, a[10] = {7,9,3,4,5,2,1,6,10,8};
scanf("%d", &x); // 用户输入数x
printf("%d ", search(a, 10, x)); // 输出x在数组中的下标
return 0;
}
㈩ C语言这里面的search(score,3);是什么意思
search() 是一个被调函数 score 和3 是他的参数
该函数的功能是查找n个学生的4次成绩 发现有小于60分的 打印出他的编号和成绩