c语言搜索程序,线性搜索实例程序(C语言)

线性搜索实例程序,使用 C语言实现如下所示:

#include

#define MAX 20

// array of items on which linear search will be conducted.

int intArray[MAX] = {1,2,3,4,6,7,9,11,12,14,15,16,17,19,33,34,43,45,55,66};

void printline(int count){

int i;

for(i = 0;i

printf("=");

}

printf("=\n");

}

// this method makes a linear search.

int find(int data){

int comparisons = 0;

int index = -1;

int i;

// navigate through all items

for(i = 0;i

// count the comparisons made

comparisons++;

// if data found, break the loop

if(data == intArray[i]){

index = i;

break;

}

}

printf("Total comparisons made: %d", comparisons);

return index;

}

void display(){

int i;

printf("[");

// navigate through all items

for(i = 0;i

printf("%d ",intArray[i]);

}

printf("]\n");

}

main(){

printf("Input Array: ");

display();

printline(50);

//find location of 1

int location = find(55);

// if element was found

if(location != -1)

printf("\nElement found at location: %d" ,(location+1));

else

printf("Element not found.");

}

如果我们编译并运行上述程序那么这将产生以下结果 –

Input Array: [1 2 3 4 6 7 9 11 12 14 15 16 17 19 33 34 43 45 55 66 ]

==================================================

Total comparisons made: 19

Element found at location: 19

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值