일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 파이썬라이브러리
- 컴퓨터비전
- CSS
- 데이터입출력구현
- CNN
- 자바
- 딥러닝
- 중학1-1
- 연습문제
- 중학수학
- SQL
- C++
- 혼공머신
- 텍스트마이닝
- html/css
- 운영체제
- numpy/pandas
- 데이터분석
- 파이썬
- 정수와유리수
- 머신러닝
- 컴퓨터구조
- 자바 실습
- 데이터베이스
- 정보처리기사필기
- pandas
- 코딩테스트
- JSP/Servlet
- 정보처리기사실기
- 영어공부
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
데이터 출력 2 - 기초 입출력 코딩테스트 문제 풀기 <코드업> 본문
오늘은 입출력을 하는 기초적인 코딩 테스트 문제를 풀어보기로 했다. 난 그날 학습한 단원에 관련된 문제를 주로 푸는데, 오늘은 이 단원을 학습하고 정리했다.
코드업에 기초적인 문제들이 많으니 여기서 문제를 가져왔다. 너무 쉬운 문제를 제외하고 조금 풀만한 문제들을 선별해보았다.
문자 2개 입력 받아 출력 <1014번>
❓ 문제 1번
2개의 문자(ASCII CODE)를 입력받아서 순서를 바꿔 출력해보자.
#include <stdio.h>
int main(void)
{
char ch1, ch2 = 0;
scanf_s("%c %c", &ch1, 1, &ch2, 1);
printf("%c %c", ch2, ch1);
return 0;
}
실수 입력 받아 출력 <1015번>
❓ 문제 2번
실수(float) 1개를 입력받아 저장한 후, 저장되어 있는 값을 소수점 셋 째 자리에서 반올림하여 소수점 이하 둘째 자리까지 출력하시오.
#include <stdio.h>
int main(void)
{
float fn;
scanf_s("%f", &fn);
printf("%.2f", fn);
return 0;
}
원하는 자릿수까지 출력하려면 % 뒤에 자릿수를 써주면 된다.
정수 입력 받아 반복 출력 <1017번>
❓ 문제 3번
int형 정수 1개를 입력받아 공백을 사이에 두고 3번 출력해보자.
#include <stdio.h>
int main(void)
{
int num;
scanf_s("%d", &num);
printf("%d %d %d", num, num, num);
return 0;
}
반복 출력하려면 변수를 3번 쓰면 된다.
시간 입력받아 출력 <1018번>
❓ 문제 4번
어떤 형식에 맞추어 시간이 입력될 때, 그대로 출력하는 연습을 해보자.
#include <stdio.h>
int main(void)
{
int hour, min = 0;
scanf_s("%d:%d", &hour, &min);
printf("%d:%d", hour, min);
return 0;
}
%d 안에는 공백이나 특수문자도 함께 넣을 수 있다. C++에서는 이런 게 어려웠던 걸로 기억하는데..
연월일 입력받아 출력 <1019번>
❓ 문제 5번
년, 월, 일을 입력받아 지정된 형식으로 출력하는 연습을 해보자.
#include <stdio.h>
int main(void)
{
int year, month, day = 0;
scanf_s("%d.%d.%d", &year, &month, &day);
printf("%04d.%02d.%02d", year, month, day);
return 0;
}
연월일을 입력하면 그대로 출력하되, 숫자가 한 자리일 경우 0을 붙여 출력하는 문제이다. 사실 이 문제는 조금 어려웠다. 0이 출력되게 하려면 02,04 이런식으로 자릿수를 입력해야주야 한다는 것도 문제를 풀며 알게 되었다.
주민번호 입력받아 바꾸어 출력 <1020번>
❓ 문제 6번
주민번호는 다음과 같이 구성된다.
XXXXXX-XXXXXXX
앞의 6자리는 생년월일(yymmdd)이고 뒤 7자리는 성별, 지역, 오류검출코드이다. 주민번호를 입력받아 형태를 바꿔 출력해보자.
#include <stdio.h>
int main(void)
{
int fnum, bnum = 0;
scanf_s("%d-%d", &fnum, &bnum);
printf("%06d%07d", fnum, bnum);
return 0;
}
6번 문제는 앞의 문제와 별반 다르지 않다. 주민번호의 앞의 0을 입력해도 그냥 출력하면 나오지 않으니, 0의 자릿수를 입력해주어야 한다.
오늘의 코딩 학습을 마치고
이렇게 코딩 테스트 문제까지 풀어보았다. 시간은 벌써 새벽 3시 반을 지나고 있다. 가끔 공부하며 이렇게 날을 새는 것도 괜찮은 것 같다.
오늘 푼 문제들은 별로 어렵지 않아서 풀이를 간단하게 적었다.
이 다음에 나오는 문제부터는 생각을 많이 해야 하는 난이도가 있는 문제여서 여기까지 풀어보았다. 한 포스트당 7문제 이상은 너무 많기도 하니까~
'알고리즘 및 자료 관리 > 알고리즘 & 코딩테스트' 카테고리의 다른 글
연산자 1 - 산술연산 문제 코딩테스트 <코드업> (0) | 2024.08.25 |
---|---|
데이터 출력 3 - 입출력 코딩테스트 <코드업> (0) | 2024.08.24 |
데이터 출력 1 - 이스케이프 문자로 출력하는 비교적 쉬운 문제 (0) | 2024.08.24 |
조건문 응용 1 - if~else, switch문을 사용해 조건에 맞는 결과값 출력하기 (0) | 2024.08.24 |
반복문 응용 4 - 피라미드 삼각형 별 찍기 (0) | 2024.08.24 |