" async="async"> ', { cookie_domain: 'auto', cookie_flags: 'max-age=0;domain=.tistory.com', cookie_expires: 7 * 24 * 60 * 60 // 7 days, in seconds }); 책 알려주는 남자 :: 쉽게 풀어쓴 C언어 Express 8장 Exercise

8장 Exercise


1. ①

① 원형 정의 대신 함수 설명이 main()보다 먼저 나온다면 원형 정의를 하지 않아도 된다.
② 매개 변수가 없는 경우에는 그 자리를 void로 채운다.


2.


3. 전부

①, ② 자료형의 부재
③ 변수 이름의 부재
④ void는 한번만 쓴다


4.


5.

(a) 1.72  (abs는 정수를, fabs는 실수를 인수로 받아 절대값을 반환함)    (b) 1     (c) 2


6.

(a) 0~9     (b) 2~6


7. 

(a) y = log10(x) + e(x);

(b) y = sin(x) + sqrt(x*x-2*a) + pow(2, 10);


8.

(a) void print_error(int n)

(b) double larger_of(double x, double y)

(c) void side_effect(void)


9. 

int f(void) -> return 10+20;
void g(int, int) -> return;
double h(double, int) -> return 1.0;


10.

int f(int n);

printf("%d", f(10));

return result;


11.

(a) y-> double y  // 자료형의 부재

(b) (int) -> int

(c) (int) -> int

(d) radius, pi -> float radius, float pi // 자료형의 부재


12.

수정 전 

수정 후 

 #include <stdio.h>   

int main(void)

{

int i, n, sum=0;

printf("정수를 입력하시오: ");

scanf("%d", &n);

for(i=0; i<=n; i++)

sum += i;

printf("0부터 %d까지의 합은 %d입니다.\n", n, sum);

return 0;

}

 #include <stdio.h>

int sum(int i);    // 함수 원형정의

int main(void) 

{

      int i, n, sum=0;

printf("정수를 입력하시오: ");

scanf("%d", &n);

sum = sum(i);  // 함수 호출

printf("0부터 %d까지의 합은 %d입니다.\n", n, sum);

return 0;

}

int sum(int i)      //함수 정의

{

     for(i=0; i<=n; i++)

         sum += i;

     return sum;

}


13.


 

수정 전 

수정 후 

비고 

 a 

 int half_of(int x);

 int half_of(int x) 

 함수 정의 단계다 

 b

 print_message(3); 

 print_message(); 

 print_message 함수는 매개변수와 반환값이 없다. 3을 리턴하려하기 때문에 오류 발생 

 c

 double half_of(int);

 double half_of(double);

 자료형을 통일시킨다

 d

 (-)

 return sum; 

 반환형인데 return이 없다 

 e

 return x+y+z;

 (-) 

 매개변수와 반환형이 없으므로 return 이 존재하면 오류 발생



블로그 이미지

얼음꿀차

책을 한 번 읽긴 읽어야겠는데 막상 읽자니 뭘 읽을지 고민되는 당신을 위해 읽을만한 책들을 알려드립니다!

,