뇌를 자극하는 C프로그래밍 Exercise 10-2 함수를 호출하여 세 변수의 값을 정렬하는 프로그램
키보드로부터 임의의 숫자 세 개를 입력 받은 후에 큰 숫자부터 차례로 출력하는 프로그램을 작성합니다. 단, main 함수가 다음과 같이 작성되어 있을 때 line_up 함수를 정의하여 프로그램을 완성합니다. 필요하다면 exchange 함수도 작성하여 사용합시다.
int main()
{
double max, mid, min;
printf("숫자 세 개를 입력하세요 : ");
scanf("%lf%lf%lf", &max, &mid, &min);
line_up(&max, &mid, &min);
printf("큰 수부터 차례로 출력하면 : %lf, %lf, %lf\n", max, mid, min);
return 0;
}
프로그램을 실행하면 다음과 같이 수행될 것입니다.
숫자 세 개를 입력하세요 : 3.4 0.45 6.07
큰 수부터 차례로 출력하면 : 6.070000, 3.400000, 0.450000
- 소스
#include <stdio.h>
void line_up(double *max, double *mid, double *min)
{
double temp;
if(*max<*min && *mid<*min)
{
temp = *max;
*max = *min;
*min = temp;
}
else if(*max<*mid && *min<*mid)
{
temp = *max;
*max = *mid;
*mid = temp;
}
if(*mid<*min)
{
temp = *mid;
*mid = *min;
*min = temp;
}
}
int main()
{
double max, mid, min;
printf("숫자 세 개를 입력하세요 : ");
scanf("%lf%lf%lf", &max, &mid, &min);
line_up(&max, &mid, &min);
printf("큰 수부터 차례로 출력하면 : %lf, %lf, %lf\n", max, mid, min);
return 0;
}
- 결과