while (1): study();

프로필 교환 프로그램 본문

학습/C, C++

프로필 교환 프로그램

전국민실업화 2021. 12. 12. 21:59
728x90
두 명의 나이와 키를 입력한 후에 바꾸어 출력합니다. 단, 나이와 키를 바꾸는 함수는 int형과 double형을 모두 교환할 수 있도록 하나의 함수로 구현하세요.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>

void swap(char*, void*, void*);

int main(void)
{
	int age1, age2;
	double h1, h2;

	printf("첫 번째 사람의 나이와 키 입력 : ");
	scanf("%d%lf", &age1, &h1);
	printf("두 번째 사람의 나이와 키 입력 : ");
	scanf("%d%lf", &age2, &h2);

	swap("int", &age1, &age2);
	swap("double", &h1, &h2);

	printf("첫 번째 사람의 나이와 키 : %d, %.1lf\n", age1, h1);
	printf("두 번째 사람의 나이와 키 : %d, %.1lf\n", age2, h2);

	return 0;
}

void swap(char* typ, void* a, void* b)
{
	if (strcmp(typ, "int") == 0)
	{
		int tmp = *(int *)a;
		*(int*)a = *(int*)b;
		*(int*)b = tmp;

	}
	else if (strcmp(typ, "double") == 0)
	{
		double tmp = *(double*)a;
		*(double*)a = *(double*)b;
		*(double*)b = tmp;
	}
}
728x90

'학습 > C, C++' 카테고리의 다른 글

성적 처리 프로그램  (0) 2021.12.14
소수 계산 프로그램  (0) 2021.12.13
[C언어]특별한 포인터  (0) 2021.12.11
가로 세로의 합 구하기  (0) 2021.12.09
[C언어] 변수의 종류  (0) 2021.12.08
Comments