【C語言】用線性查找與折半查找的兩種方法查找成績-創(chuàng)新互聯(lián)

從鍵盤輸入某班學(xué)生某門課的學(xué)號和成績(假設(shè)每班人數(shù)不超過40人),當(dāng)輸入為負值時,表示輸入結(jié)束,試編程從鍵盤輸入一個學(xué)號,查找該學(xué)號學(xué)生的成績?

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

【線性查找】 Linear Search

#include#define N 40
int ReadScore(int score[],long num[]);
int LinSearch(long num[],long x,int n);
int main()
{
	int score[N],n,pos;
	long num[N],x;
	n=ReadScore(score,num);
	printf("Total students are %d\n",n);
	printf("input the searching ID:");
	scanf("%ld",&x);
	pos=LinSearch(num,x,n);
	if(pos!=-1)
	  printf("score=%d",score[pos]);
	else
	  printf("Not found!\n");
	return 0;  
}
int ReadScore(int score[],long num[])
{
	int i=-1;
	do{
		i++;
		printf("please input ID and score:");
		scanf("%ld%d",&num[i],&score[i]);
	}while(num[i]>0&&score[i]>=0);
	return i;
}
int LinSearch(long num[],long x,int n)
{
	int i;
	for(i=0;i

【折半查找】 Binary Search

#include#define N 40
int ReadScore(long num[],int score[]);
int BinSearch(long num[],long x,int n);
int main()
{
	int score[N],n,pos;
	long num[N],x;
	n=ReadScore(num,score);
	printf("Total students is %d!\n",n);
	printf("input the searching ID:\n");
	scanf("%ld",&x);
	pos=BinSearch(num,x,n);
	if(pos!=-1)
	  printf("score=%d",score[pos]);
	else
	  printf("Not found!");
	return 0;
}
int ReadScore(long num[],int score[])
{
	int i=-1;
	do{
		i++;
		printf("please input student is ID and score:\n");
		scanf("%ld%d",&num[i],&score[i]);
	}while(num[i]>0&&score[i]>=0);
	return i;
}
int BinSearch(long num[],long x,int n)
{
	int mid,left=0,right=n-1;
	while(left<=right)
	{
		mid=(left+right)/2;
		if(x>num[mid])
		  left=mid+1;
		else if(x

提示:mid為輸入數(shù)組的中間數(shù)個數(shù),如果不能整除也沒關(guān)系,前后兩個數(shù)都可取

用折半查找效率要高一點

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

標(biāo)題名稱:【C語言】用線性查找與折半查找的兩種方法查找成績-創(chuàng)新互聯(lián)
本文來源:http://muchs.cn/article38/phppp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、定制開發(fā)電子商務(wù)、企業(yè)建站、軟件開發(fā)、網(wǎng)站策劃

廣告

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