❶ 一維數組的查找,用C語言寫。

#include <stdio.h>
#include <stdlib.h>

void main()
{
int i,f;
long int a[20]={2,4};
for(i=2;i<20;i++)
a[i]=a[i-1]+2;
while(1)
{
printf("輸入元素號:");
scanf("%d,",&f);
if(f<=21&&f>=1)
printf("元素的數值:%d\n",a[f-1]);
else
printf("超出數組范圍\n");
}
system("pause");
}//看看回符合答不符

❷ C語言__數組中的查找某一元素,並顯示其下標號!急!求高手!

二分法
抄.
#include
"stdio.h"
int
search(int
a[],int
x)
{
int
find,low,high,mid;
find=0;low=1;high=10;
while(!find&&low<=high)
{
mid=(low+high)/2;
if(x==a[mid])find=mid;
else
if(x<a[mid])high=mid-1;
else
low=mid+1;
}
return
find;
}
void
main()
{
int
i,x,a[11];
printf("請按升序輸襲入10個數:");
for(i=1;i<11;i++)
scanf("%d",&a[i]);
printf("請輸入待查找的數x:");
scanf("%d",&x);
printf("數%d在數組a中的位置為%d\n",x,search(a,x));
}

❸ C語言題目:查找數組中的元素

把if(ret = -1){...改成if(ret == -1){...

❹ C語言實現整型數組中查找指定元素的函數

#include<stdio.h>
int search(int a[], int n, int searchValue) {
int i;
for(i=0; i<n; i++) if(a[i]==searchValue) return i;
return -1;
}
int main() {
int i;
int a[10],find,idx;
for(i=0; i<10; i++) {
printf("Input a[%d]:",i);
scanf("%d",&a[i]);
}
printf("Input searchValue:");
scanf("%d",&find);
idx=search(a,10,find);
if(idx!=-1) printf("pos=%d",idx);
else printf("not found");
}

❺ C語言如何查找並輸出數組中含有某一關鍵字的所有元素

strcmp 是整個字元串比較的,不能用 strcmp,可以用 strstr() 函數,strstr 是在一個字元串中查找一個子串,如果查到返回子串在字元串的位置,查找不到返回NULL。例如:

constchar*p=strstr("清炒土豆絲","土豆");

❻ C語言查找數組中的數據

#define IntSize sizeof(int)
#define StructSize sizeof(struct tagresult)

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

typedef int *ptint;
typedef struct tagresult
{
int v;
char bl;
}*ptresult;

int lessthan(const void *v1,const void *v2)
{
int i1=*((ptint)v1),i2=*((ptint)v2);

if(i1==i2)
return 0;
else if(i1<i2)
return 1;
else
return -1;
}

int main()
{
int c,n,capacity=128,rlen=0,dlen;
ptint data=(ptint)calloc(capacity,IntSize);
ptresult result;

scanf("%d",&n);
result=(ptresult)calloc(n,StructSize);
memset(result,0,n*StructSize);
while(n-->0)
{
scanf("%d",&c);
dlen=0;
for(;c>0;c--)
{
if(dlen+1>=capacity)
{
capacity*=2;
data=(ptint)realloc(data,capacity);
}
scanf("%d",data+dlen++);
}
scanf("%d",&c);
//直接調用庫函數qsort進行快速排序,就不自己寫快速排序演算法函數了
qsort(data,dlen,IntSize,lessthan);
if(c<=dlen)
{
(*(result+rlen)).v=*(data+c-1);
(*(result+rlen)).bl=1;
}
rlen++;
}
for(n=0;n<rlen;n++)
{
if(1==(*(result+n)).bl)
printf("Case #%d:%d\n",n+1,(*(result+n)).v);
else
printf("Case #%d:-1\n",n+1);
}
free(data);
free(result);
return 0;
}