본문 바로가기
Coding/C언어 - Codeup

[코드업/Codeup] C언어 : 1010~1018 풀이 [기초-입출력] #1

by 이브(Eve) 2024. 2. 29.

# 1010  : [기초-입출력] 정수 1개 입력받아 그대로 출력하기(설명)

입력 : 정수 1개
출력 : 입력된 정수를 그대로 출력

#include <stdio.h>
int main()
{
	int a; // 정수형(int) 변수 a 선언
	scanf("%d", &a); // 정수를 입력받고 변수 a에 저장
	printf("%d", a); // 변수 a 출력
	return 0;
}

 
scanf함수의 기본 형태 : scanf("%서식 지정자", &저장할 변수);
"%d" : 서식 지정자로 입력 받을 데이터의 형식을 지정한다. 입력 받을 값이 정수라면, %d를 사용한다.
'&a' : &는 변수의 주소를 나타내는 연산자이고, a는 입력받은 값을 저장할 변수이다.
즉 '&a' 는 '입력받은 값을 변수 a의 주소에 저장해주세요.' 라는 뜻이다.

# 1011  : [기초-입출력] 문자 1개 입력받아 그대로 출력하기(설명)

입력 : 문자 1개
출력 : 입력된 문자를 그대로 출력

#include <stdio.h>
int main()
{
	char a; // 문자형(char) 변수 a 선언
	scanf("%c", &a);
	printf("%c", a);
	return 0;
}

 
단일 문자를 출력하는 경우 %c를 사용한다.

# 1012  : [기초-입출력] 실수 1개 입력받아 그대로 출력하기(설명)

입력 : 실수값 1개
출력 : 입력된 실수값을 그대로 출력

#include <stdio.h>
int main()
{
	float a; // 실수형(float) 변수 a 선언
	scanf("%f", &a);
	printf("%f", a);
	return 0;
}

 
실수 값을 출력하는 경우 %f를 사용한다.

# 1013  : [기초-입출력] 정수 2개 입력받아 그대로 출력하기(설명)

입력 : 정수 2개가 공백으로 구분되어 입력 
출력 : 입력된 두 정수를 공백으로 구분하여 출력

#include <stdio.h>
int main()
{
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%d %d", a, b);
	return 0;
}

 
scanf("%d%d", &a, &b); 로 %d를 붙여서 쓰더라도 엔터나 공백으로 입력 데이터가 구분되어(%d를 두 개 쓴 시점에서 프로그램은 어떻게든 정수 2개를 무조건 입력받아야 그 다음 차례인 printf함수로 넘어감.) 오류는 나지 않는다.

# 1014  : [기초-입출력] 문자 2개 입력받아 순서 바꿔 출력하기(설명)

입력 : 문자 2개가 공백으로 구분되어 입력 
출력 : 입력된 두 문자의 순서를 바꿔 출력

#include <stdio.h>
int main()
{
	char a, b;
	scanf("%c %c", &a, &b); // 변수 a부터 입력받기
	printf("%c %c", b, a); // 변수 출력 순서를 b, a 순으로 지정해 순서 바꿔주기
	return 0;
}

# 1015  : [기초-입출력] 실수 입력받아 둘째 자리까지 출력하기(설명)

입력 : 실수 1개
출력 : 소수점 셋 째 자리에서 반올림하여 소숫점 이하 둘째 자리까지 출력

#include <stdio.h>
int main()
{
	float a;
	scanf("%f", &a);
	printf("%.2f", a);
	return 0;
}

 
- '%.nf' 는 실수형을 반올림하여 소숫점 이하 n번째 자리까지 출력하라는 뜻이다.
 즉, 문제에서 사용한 '%.2f'는 실수형을 반올림하여 소숫점 이하 2번째 자리까지 출력해달라는 뜻이다.

# 1017  : [기초-입출력] 정수 1개 입력받아 3번 출력하기(설명)

입력 : 정수 1개
출력 : 입력받은 정수를 공백으로 구분해 3번 출력

#include <stdio.h>
int main()
{
	int a;
	scanf("%d", &a);
	printf("%d %d %d", a, a, a);
	return 0;
}

# 1018  : [기초-입출력] 시간 입력받아 그대로 출력하기(설명)

입력 : 시(hour)와 분(minute)이 ":" 으로 구분되어 입력
출력 : 입력받은 시간을 "시:분" 형식으로 출력

#include <stdio.h>
int main()
{
	int hour, minute;
	scanf("%d:%d", &hour, &minute); // 정수:정수 형태로 입력을 받겠다는 뜻
	printf("%d:%d", hour, minute);
	return 0;
}