본문 바로가기
C C++/C C++ 백준

C언어 백준 11814번 나이순 정렬

by Go! Jake 2022. 6. 26.

문제 풀이

구조체를 통해 나이와 이름을 입력 받고, 나이 순으로 qsort를 이용 해 퀵정렬한다.

소스코드

#include <stdio.h>
#include <stdlib.h>

typedef struct {
	int age;
	char name[101];
} person;

int compare (const void* a, const void* b)
{
	person A=*(person*)a;
	person B=*(person*)b;
	
	if (A.age<B.age)
	{
		return -1;
	}
	else if (A.age>B.age)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}

int main()
{
	int n;
	scanf("%d", &n);
	person p[n];
	int i=0;
	while (i<n)
	{
		scanf("%d %s", &p[i].age, p[i].name);
		i++;
	}
	i=0;
	
	qsort(p,n,sizeof(person),compare);
	
	while (i<n)
	{
		printf("%d %s\n", p[i].age, p[i].name);
		i++;
	}

    return 0;
}

댓글