소프트웨어/C
[2005년 중간 10번] 원 넓이 - 함수 호출
카켈
2007. 2. 16. 22:39
1. 목적
- 함수 호출을 하고 원하는 값을 얻는다.
2. 문제 (점수 : 30 점)
- 키보드로 원의 반지름(실수) 값을 입력 받아 넓이를 출력한다.
- 넓이를 계산하는 area 라 불리는 함수를 만들어 쓴다.
- 0을 입력하면 프로그램이 종료 된다.
- do-while 제어문을 써서 반복한다.
- 출력 화면
원의 반지름을 입력하세요 : 10
원의 면적 : 314.159
원의 반지름을 입력하세요 : 12.34
원의 면적 : 478.388
원의 반지름을 입력하세요 : 89.90
원의 면적 : 25390.379
원의 반지름을 입력하세요 : 0
Press any key to continue
3. 이해
- 원하는 값을 얻을수 있는 함수를 만들수 있는가?
- 반복을 원하는 범위내에 할수 있는가?
4. 코드
#include <stdio.h>
- 이전 문제에 유사한 문제가 있습니다.
- float 형으로 출력해야 하므로 double(배정도 실수형) 리턴형 함수에 float(단정도 실수형) 형으로 형변환(casting) 했습니다.
- area 함수가 원의 넓이를 구하는데 사용되었습니다.
6. 참고
- 유사 문제
double area(float rad)
{
return 3.141592 * rad * rad;
}
int main()
{
float in = 0;
do
{
printf("원의 반지름을 입력하세요 : ");
scanf("%f", &in);
if(in != 0)printf("원의 면적 : %0.3f\n\n",(float)area(in));
}while(in);
return 0;
}
5. 해설- 이전 문제에 유사한 문제가 있습니다.
- float 형으로 출력해야 하므로 double(배정도 실수형) 리턴형 함수에 float(단정도 실수형) 형으로 형변환(casting) 했습니다.
- area 함수가 원의 넓이를 구하는데 사용되었습니다.
6. 참고
- 유사 문제