c語言查找地點(diǎn)函數(shù) 查找數(shù)字位置c語言

C語言如何用函數(shù)來實(shí)現(xiàn)搜索

#include?stdio.h

成都創(chuàng)新互聯(lián)主營鼓樓網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶App定制開發(fā),鼓樓h5小程序開發(fā)搭建,鼓樓網(wǎng)站營銷推廣歡迎鼓樓等地區(qū)企業(yè)咨詢

int?search(int?a[],int?b,int?c,int?i)

{

int?x,y,z;

x=i+1;

z=b-1;

y=(x+z)/2;

while(x=z)

{

if(a[y]c)

{

z=y-1;

y=(x+z)/2;

continue;

}

if(a[y]c)

{

x=y+1;

y=(x+z)/2;

continue;

}

return?y+1;

}

return?-1;

}

int?main()

{

int?i,m,pos;

scanf("%d",m);

int?a[m];

for(i=0;im;i++)

{

scanf("%d",a[i]);

}

for(i=0;im;i++)

{

pos=search(a,m,a[i],i);

if(pos!=-1)

{

printf("FOUND?a[%d]=%d,?position?is?%d\n",i,a[i],i+1);

return?0;

}

}

if(pos==-1)

{

printf("NOT?FOUND\n");

}

return?0;

}

這種查找方法的數(shù)組必須是從小到大的,用遍歷的話就沒這個(gè)問題了。

C語言中對函數(shù)名取地址

#include stdio.h

void f()

{

}

void main()

{

printf("%u\n", f);

printf("%u\n", f);

printf("%p\n", f);

}

主函數(shù)中前兩行%u表示輸出無符號的十進(jìn)制,而第三行%p表示輸出地址,其結(jié)果是一個(gè)十六進(jìn)制的數(shù),你將其轉(zhuǎn)換成十進(jìn)制,你會發(fā)現(xiàn)與前兩行結(jié)果一樣。

C語言查找字符串位置函數(shù)。請高手幫忙解決

#includestdio.h

#includestring.h

int?findstr(char?*s_str,char?*d_str);

int?main(void)?{

char?s1[80],s2[80];

int?n;

printf("請輸入一個(gè)字符串:");

gets(s1);

printf("請輸入你要查找的字符串:");

gets(s2);

n=findstr(s1,s2);

printf("%s在%s里共有%d個(gè)\n",s2,s1,n);

return?0;

}

int?findstr(char?*s_str,char?*d_str)?{

int?i,j,k,count=0;

char?temp[80];

int?length=strlen(d_str);

for(i=0;istrlen(s_str);i++)?{

k=0;

for(j=i;ji+length;j++)

temp[k++]=s_str[j];

temp[k]='\0';

if(!strcmp(temp,d_str))?count++;

}

return?count;

}

求c語言大神 題目:編寫查找函數(shù)search(),實(shí)現(xiàn)如下功能。

C代碼和運(yùn)行結(jié)果如下:

輸入5,成功輸出了其在給定數(shù)組中的下標(biāo)為4,結(jié)果正確,望采納~

附源碼:

#include stdio.h

int search(int a[], int n, int x) { // 返回?cái)?shù)組a[]中x的下標(biāo)

int i;

for (i = 0; i n; i++) {

? if (a[i] == x)

? ? ? return i;

}

return -1; // 數(shù)組中沒有x則返回-1

}

int main() {

int x, a[10] = {7,9,3,4,5,2,1,6,10,8};

scanf("%d", x); // 用戶輸入數(shù)x

printf("%d ", search(a, 10, x)); // 輸出x在數(shù)組中的下標(biāo)

return 0;

}

C語言查找函數(shù)

首先,指針默認(rèn)只有一個(gè)地址的長度的空間,存不了那么多的字符。

其次,傳值和傳地址一塌糊涂,完全就是亂寫么。

scanf的第二個(gè)參數(shù)是地址,如果本身不是指針則需要取址符。

我給你重寫了算了

#includestdio.h

int Retrieve(int array[],int length,int x);/*形參x直接傳值就可以了*/

int main()

{

int *a,x;

int length,i;

scanf("%d",length);

a = (int)malloc(sizeof(int)*length); /*申請一個(gè)內(nèi)存空間用來存放數(shù)據(jù),或者直接用一個(gè)大數(shù)組也可以*/

C語言設(shè)計(jì)函數(shù)查找元素位置

根據(jù)題意可得如下代碼:

#include?stdio.h

#include?string.h

struct?workers

{

char?type[30];

int?zj;

char?name[30];

};

int?findWorkerByTZ(struct?workers?a[],?int?n,?char?type[],?int?zj)

{

int?i;

for?(i?=?0;?i??n;?++i){

if?(strcmp(a[i].type,?type)?==?0??a[i].zj?==?zj){

return?i;

}

}

return?-1;

}

int?main()

{

struct?workers?a[10]?=?{{"teacher",?4,?"aa"},?{"student",?1,?"bb"},?{"teacher",?5,?"cc"}};

int?n?=?3;

int?index?=?findWorkerByTZ(a,?n,?"teacher",?4);

if?(index?==?-1){

printf?("not?found\n");

}

else?{

printf?("found?it?at?%d\n",?index);

}

return?0;

}

文章標(biāo)題:c語言查找地點(diǎn)函數(shù) 查找數(shù)字位置c語言
網(wǎng)址分享:http://muchs.cn/article24/docdoje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、企業(yè)建站、電子商務(wù)、小程序開發(fā)、Google、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)