C 9

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 3장 검색 연습문제 Q6 답안 p.128

Q6. 요소의 값이 내림차순으로 정렬된 long형 배열에서의 검색을 bsearch 함수를 사용하여 프로그램을 작성하세요. 답안) #include #include int long_cmpr(const long *a, const long *b) { if(*a *b) return -1; else return 0; } int main(void) { int i, nx; long ky, *x, *p; puts("bsearch 함수를 사용하여 검색"); printf("요소 개수 : "); scanf("%d", &nx); x = calloc(nx, sizeof(long)); printf("x[0] : "); scanf("%ld", &x[0]); for(i=1; i x..

Algorithm/Do it 2019.11.04

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 3장 검색 연습문제 Q5 답안 p.115

Q5. 우리가 살펴본 이진 검색 알고리즘 프로그램은 검색할 값과 같은 값을 갖는 요소가 하나 이상일 경우 그 요소 중에서 맨 앞의 요소를 찾지 못합니다. 예를 들어, 아래 그림의 배열에서 7을 검색하면 중앙에 위치하는 a[5]를 검색합니다. 맨 앞의 요소를 찾는 bin_search2 함수를 작성해보세요. int bin_search2(const int a[], int n, int key); 답안) #include #include int bin_search2(const int a[], int n, int key) { int j; int pl = 0; int pr = n-1; int pc; int chk = 1; do { pc = (pl + pr) / 2; if(a[pc] == key) chk = 0; els..

Algorithm/Do it 2019.10.16

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 2장 기본 자료구조 연습문제 Q12 답안 p.93

Q12. 실습 2-13 프로그램의 시력 분포를 오른쪽처럼 그래프 모양으로 출력하도록 프로그램을 작성하세요. 0.1 ~ : * 0.2 ~ : *** 0.3 ~ : * ... 이하 생략 ... 코드) #include #define VMAX 21 typedef struct { char name[20]; int height; double vision; } PhysCheck; double ave_height(const PhysCheck dat[], int n) { int i; double sum=0; for(i=0; i

Algorithm/Do it 2019.10.12

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 2장 기본 자료구조 연습문제 Q7 답안 p.75

Q7. 앞의 프로그램을 기초로 기수 변환 과정을 상세히 출력하는 프로그램을 작성하세요. ※ 그림 2-11, 그림 2-13에서는 나눗셈의 나머지를 몫의 오른쪽에 출력했지만 여기서는 나머지를 나누어지는 수의 오른쪽에 출력합니다. 코드) #include #define swap(type, x, y) do{type t=x; x=y; y=t;} while(0) int card_conv(unsigned x, int n, char d[]) { char dchar[] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int digits = 0; int j=0; if(x == 0) { d[digits++] = dchar[0]; } else { while(x) { printf("%d| %d --- ..

Algorithm/Do it 2019.10.09

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 2장 기본 자료구조 연습문제 Q4 답안 p.75

Q4. 실습 2-6은 키를 난수로 생성한 후 키의 최댓값을 구하는 프로그램입니다. 키와 함께 사람수도 난수로 생성하도록 수정하여 프로그램을 작성하세요. (※ 사람 수는 5이상 20이하의 난수로 입력하세요.) 코드) #include #include #include int maxof(const int a[], int n) { int i; int max = a[0]; for(i=1; i max) max = a[i]; } return max; } int main(void) { int i; int *height; int number; srand(time(NULL)); number = rand() % 16 + 5; //사람 수는 5이상 2-이하 난수로.. height = calloc(number, sizeof(in..

Algorithm/Do it 2019.10.09

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 2장 기본 자료구조 연습문제 Q1 답안 p.74

Q1. 실습 2-5는 키의 최댓값을 구하는 프로그램으로, 이 프로그램을 수정하여 키의 최솟값을 구하는 프로그램을 작성하세요. 최솟값을 구하는 과정은 아래와 같은 함수로 구현하세요. int minof(const int a[], int n); 코드) #include #include int minof(const int a[], int n) { int i=1; int min = a[0]; for(i; i a[i]) min = a[i]; } return min; } int main(void) { int i; int *height; int people_number; printf("사람 수 : "); scanf("%d", &people_number); height = calloc(people_number, sizeo..

Algorithm/Do it 2019.10.09
반응형