안경잡이 구루루

백준 25314 (코딩은 쳬육과목 입니다) [C programming] [Implemention/구현] 본문

C언어(C programming)/문제풀이(백준,BaekJoon)

백준 25314 (코딩은 쳬육과목 입니다) [C programming] [Implemention/구현]

구루루(gururu) 2023. 11. 5. 14:24
반응형

https://www.acmicpc.net/problem/25314

 

25314번: 코딩은 체육과목 입니다

오늘은 혜아의 면접 날이다. 면접 준비를 열심히 해서 앞선 질문들을 잘 대답한 혜아는 이제 마지막으로 칠판에 직접 코딩하는 문제를 받았다. 혜아가 받은 문제는 두 수를 더하는 문제였다. C++

www.acmicpc.net


나:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main() {
	int n,i;
	char a[6] = "long ";
	scanf("%d", &n);
	for (i = 0; i < n / 4; i++) {
		printf("%s",a);
	}
	printf("%s", "int");
	return 0;

}

완성된 코드는 위와 같다. 

 

우선 VS의 scanf() 오류를 막기 위해 #define _CRT_SECURE_NO_WARNINGS 를 선언.

 

첫번 째 줄에 입력받을 문제의 정수 n 변수, 반복문 종결조건에 사용할 i 변수를 정수형으로 선언함.

 

그리고 4의 배수마다 출력시킬 문자열을 배열을 이용해 "long " 을 변수 a에 저장.

 

< !!!!!  각각의 long 사이에는 공백이 있어야 하기 때문에 문자열 끝에 공백을 남겨 두었고 배열은 0부터 시작해서 끝을 포함하지 않고 뒤에 컴파일러가 문자열의 끝에 널 문자(\0) 를  자동으로 추가 하기 때문에 배열의 크기보다 하나 더 크게 배열을 선언 !!!!!!  >

 

이후에 n/4 만큼 a가 출력되야 하기 때문에 for 반복문을 통해 n/4 만큼 반복을 진행시키며 a를 출력시킨다. 

 

반복이 끝나면 최종적으로 뒤에 "int" 문자열을 출력시켜준다.

 

 

반응형