對于數組的查詢,其實就是對數組中數據做一個遍歷。
創新互聯建站專業為企業提供齊河網站建設、齊河做網站、齊河網站設計、齊河網站制作等企業網站建設、網頁設計與制作、齊河企業網站模板建站服務,十多年齊河做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
最常用的方法就是通過循環對數組中的元素逐個取值,并與參考值(要查詢的值)做比對,并處理結果。
下面是一個簡單的對一維數組進行查詢的樣例。
函數功能:對輸入的數組元素進行查詢,打印符合查詢值的元素位置,并返回查詢到的元素總數。
函數名:array_query
函數聲明: int array_query(int *a, int n, int v);
參數介紹:
a: 輸入的數組,類型為整型指針,表示整型數組。可以根據實際需要進行調整。
n:數組中現有元素的個數。
v:要查詢的元素值。
返回值:
整型,返回查詢到的元素個數。如果出錯返回-1。
實現代碼:
int?array_query(int?*a,?int?n,?int?v)
{
int?i,ret;
if(a?==?NULL?||?n?=?0)?return?-1;?//出錯處理
for(ret?=?i?=?0;?i??n;?i?++)
{
if(a[i]?==?n)
{
printf("%d\n",?i);//找到元素,打印下標,并累計統計值
ret?++;
}
}
return?ret;//返回總數。
}
#includestdio.h
int search(int a[], int n, int searchValue) {
int i;
for(i=0; in; i++) if(a[i]==searchValue) return i;
return -1;
}
int main() {
int i;
int a[10],find,idx;
for(i=0; i10; 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");
}
首先,指針默認只有一個地址的長度的空間,存不了那么多的字符。
其次,傳值和傳地址一塌糊涂,完全就是亂寫么。
scanf的第二個參數是地址,如果本身不是指針則需要取址符。
我給你重寫了算了
#include
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);
/*申請一個內存空間用來存放數據,或者直接用一個大數組也可以*/
文章標題:函數查找元素c語言 函數查找元素c語言怎么寫
當前網址:http://vcdvsql.cn/article46/dosdhhg.html
成都網站建設公司_創新互聯,為您提供云服務器、ChatGPT、網站改版、網站制作、域名注冊、關鍵詞優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯