//프로필 교환 프로그램
#include <stdio.h>
void swap(char* type, void* vp1, void* vp2);
//책에서 제공한 함수 호출예제 swap("int", &a, &b)를 고려하여
"int" 를 사용하기 위해 char * 변수 인자, int형과 double 형 모두를 인자로 받기 위해 void * 형태 의 인자 사용
int main(void)
{
double height1, height2;
int age1, age2;
printf("첫 번째 사람의 나이와 키 입력: ");
scanf("%d %lf", &age1, &height1);
printf("두 번째 사람의 나이와 키 입력: ");
scanf("%d %lf", &age2, &height2);
swap("int", &age1, &age2);
swap("double", &height1, &height2);
printf("첫 번째 사람의 나이와 키 : %d, %.1lf\n", age1, height1);
printf("두 번째 사람의 나이와 키 : %d, %.1lf\n", age2, height2);
return 0;
}
void swap(char* type, void* vp1, void* vp2)
{
if (type == "int")
{
int temp = *(int*)vp1;
*(int*)vp1 = *(int*)vp2;
*(int*)vp2 = temp;
}
else if (type == "double")
{
double temp = *(double*)vp1;
*(double*)vp1 = *(double*)vp2;
*(double*)vp2 = temp;
}
}
'프로그래밍 언어 > C언어' 카테고리의 다른 글
에라토스테네스의 체(소수구하기) (0) | 2024.02.12 |
---|---|
혼자공부하는C언어_도전실전예제_Chapter16 (1) | 2024.02.12 |
혼자공부하는C언어_도전실전예제_Chapter14 (0) | 2024.02.11 |
혼자공부하는C언어_도전실전예제_Chapter13 (0) | 2024.02.11 |
혼자공부하는C언어_도전실전예제_Chapter12 (0) | 2024.02.11 |