쉽게 풀어쓴 C언어 EXPRESS(개정 3판) - Chapter 15-1

1.

double power(int x, int y) {

double result = 1.0;
int i;

for (i = 0; i < y; i++) {

printf("result=%f\n", result);

result *= x;
}

return result;
}

(a)
#ifdef DEBUG

printf("result=%f\n", result);

#endif

(b)
#if DEBUG==2

printf("result=%f\n", result);

#endif

(c)
#if (DEBUG==2 && LEVEL==3)

printf("result=%f\n", result);

#endif

(d)
printf("%d: result=%f\n", __LINE__, result);

(e)
#if POWER_TYPE==0

int power(int x, int y) {
int result = 1.0;
# else

double power(int x, int y) {
double result = 1.0;


#endif
... #if POWER_TYPE == 0
printf("result=%d\n", result);

# else

printf("result=%f\n", result);

#endif
...

(f)

#if 0
printf("result=%f\n", result);

# else


2.

#include <stdio.h>

#define MIN(x,y) (x)<(y)?(x):(y)
#define GET_MIN(x,y,z) (MIN(x, y))<(z)?(MIN(x, y)):(z)

int main(void) {
int x, y, z, result;

printf("3개의 정수를 입력하시오: ");
scanf("%d %d %d", &x, &y, &z);

result = GET_MIN(x, y, z);

printf("최소값은 %d입니다. ", result);
return 0;
}


3.

#define ARRAY_INIT(array, size, value) {

int i;

for (i = 0; i < size; i++)\
array[i] = (value);
}

int main(void) {

int a[10];

ARRAY_INIT(a, 10, 0);

return 0;
}


4.

#include <stdio.h>
#define VOLUME(r, h) (3.141592*r*r*h)

int main(void) {

double r, h, volume;

printf("원기둥의 반지름을 입력하시오: ");
scanf("%lf", &r);

printf("원기둥의 높이를 입력하시오: ");
scanf("%lf", &h);

volume = VOLUME(r, h);

printf("원기둥의 부피: %f ", volume);
return 0;
}

댓글

이 블로그의 인기 게시물

쉽게 풀어쓴 C언어 EXPRESS(개정 3판) - Chapter 10-3

쉽게 풀어쓴 C언어 EXPRESS(개정 3판) - Chapter 16-1

쉽게 풀어쓴 C언어 EXPRESS(개정 3판) - Chapter 13-2