TEST/자료구조와 함께 배우는 알고리즘 입문(C언어)

<3> Q1. 자료구조와 함께 배우는 알고리즘 입문 (C언어)

도라몬즈 2020. 6. 30. 12:52
#include<stdio.h>
#include<stdlib.h>

int search(int a[], int n, int key)
{
	int i = 0;
	a[n] = key;
	for (i; i <= n; i++) 
		if (a[i] == key)
			return i == n ? -1 : i;
}

int main(void)
{
	int i, nx, ky, idx;
	int* x;
	puts("선형 검색(보초법)");
	printf("요소 개수 : ");
	scanf_s("%d", &nx);
	x = calloc(nx + 1, sizeof(int));
	for (i = 0; i < nx; i++) {
		printf("x[%d] : ", i);
		scanf_s("%d", &x[i]);
	}
	printf("검색값 : ");
	scanf_s("%d", &ky);
	idx = search(x, nx, ky);
	if (idx == -1)
		puts("검색에 실패했습니다.");
	else
		printf("%d(은)는 x[%d]에 있습니다.\n", ky, idx);
	free(x);

	return 0;
}