728x90

매우 쉬움 11

#16 - 문자열 [매우 쉬움]*

문제 char* ptr = "program"; 으로 초기화된 문자열을 아래와 같이 출력하는 프로그램을 작성하시오. 핵심 개념 ㅡ 문자열 입출력 방식 문자열을 표현하기 위해 char* 자료형을 가진 변수를 선언하는 것은 char 자료형으로는 문자 한 개밖에 저장할 수 없기 때문이다. char* 은 포인터 자료형으로서 주어진 문자열을 저장하는 주소에 직접 접근한다. 첫 번째 문자의 주소(index 0)에 'p'부터 7번째 문자의 주소(index 6)에 'm'까지 인접한 주소에 순차적으로 저장된다. 마지막에는 자동적으로 null 문자(\0)가 저장되면서 마침표(.)와 같은 역할을 하게 된다. 이렇게 읽기 전용의 문자열 주소가 생성된다.ㅡ 이스케이프 시퀀스 활용 '\' 기호 뒤에 문자나 숫자가 오는 조합을 이스..

카테고리 없음 2019.01.07

#15 - 형 변환 [매우 쉬움]

문제숫자(digit)로 구성된 문자열을 입력받아 정수로 바꾸는 함수를 만들어 프로그램을 작성하시오.ex) 문자열 "4567"은 정수 4567입니다. 핵심 개념ㅡ atoi() 함수 활용 결과ㅡ atoi 함수를 통해 문자열을 정수로 변환했기에 영문자나 특수 문자의 유무에 따라 출력 결과가 바뀐다.ㅡ 문자열은 정수로 되어 있어야 하고 알파벳 영문자, 특수 문자가 포함되면 해당 문자부터는 변환하지 않는다. ㅡ 적절한 크기의 char 배열을 선언하여 입력받은 문자열을 atoi 함수를 통해 정수로 변환하여 출력하였다.

카테고리 없음 2019.01.07

#14 - 배열 [매우 쉬움]

문제1차원 정수형 배열 a[10]에서 10개의 원소를 입력받아 배열에 저장하고, 가장 큰 값과 가장 작은 값의 차이를 반환하는 함수를 만들어 프로그램에 저장하시오. 핵심 개념ㅡ 배열의 정렬 결과 ㅡ 동적할당을 통해 배열의 크기를 설정할 수도 있다. ㅡ line 03- 07: 배열 a에 정수를 size개만큼 입력받는다.ㅡ line 09- 16: 거품 정렬(Bubble sort)을 통해 a[0]를 최솟값, a[size-1]을 최댓값으로 오름차순 정렬한다.ㅡ line 18: 최댓값과 최솟값의 차이를 반환한다.

카테고리 없음 2019.01.07

#13 - 2차원 배열 [매우 쉬움]

2차원 배열을 선언하여 모든 성분의 값을 각 성분의 첨자 간의 곱으로 초기화하고, 그 내용을 다음 결과와 같이 출력하는 프로그램을 출력하시오. 핵심 개념ㅡ 이차원 배열ㅡ 이중 for문 line 8- 10: 첫번째 행 출력 = (1, p) 값들line 11: 첫번째 행 출력을 모두 마쳤으므로 행 바꿈.line 13- 14: 두번째 행 이후의 첫번째 열 출력 = (q>1, 1) 값들 line 16- 18: 두번째 행 이후의 두번째 열 이후 출력 = (r>1, s>1) 값들line 19: 각 행의 출력을 모두 마칠 때마다 행 바꿈.

카테고리 없음 2019.01.06

#12 - 팩토리얼 [매우 쉬움]

문제음이 아닌 임의의 정수 n을 입력받아 n! (n 팩토리얼)을 구하는 함수 factorial(n)을 순환함수로 작성하시오. 0! = 1, 1! = 1 이고, n≥2일 때, n! = n * (n-1)! 이다.ex) 4! = 4 * 3! = 4*(3*2*1) 이전 글에서 반복문/ 재귀함수(순환함수)를 통해 팩토리얼을 구하는 방법을 모두 다뤘었다. 2019/01/03 - [분류 전체보기] - #10 - 함수 [매우 쉬움] 핵심 아이디어 ㅡ 반복문 / 재귀함수 활용ㅡ long 자료형 변수 사용

카테고리 없음 2019.01.06

#11 - 제곱근 [매우 쉬움]

문제직각삼각형에서 직각을 이루는 두 변의 길이를 입력받고, 함수를 통해 빗변의 길이를 반환값으로 돌려받아 출력하는 프로그램을 작성하시오. 이 함수의 매개변수 및 반환값은 double로 하시오. 핵심 아이디어 ㅡ 제곱과 제곱근 ※ 결과 ㅡ 실행을 4번 반복한 결과가 다음과 같다.ㅡ 한정된 크기의 double형 변수는 유효숫자가 15이기에 완전한 실수의 표현이 불가하고, 따라서 다음의 결과는 모두 근삿값이다.ㅡ 다음과 같은 결괏값이 정확하려면 c < 10^10 이고, c는 소숫점 6자리 이하의 유한소수이어야 한다. ㅡ line 9: sqrt(k)는 특정값의 제곱근을, pow(a,b)는 첫번째 매개변수를 밑으로 하고, 다음의 수를 승수로 하는 수의 값을 계산한다. 주요 문법ㅡ 헤더파일에 존재하는 sqrt(k)..

카테고리 없음 2019.01.06

#10 - 함수 [매우 쉬움]

팩토리얼음이 아닌 임의의 정수 n을 입력받아 n! (n 팩토리얼)을 구하는 함수 factorial(n)을 반복문으로 작성하시오. 0! = 1, 1! = 1 이고, n≥2일 때, n! = n * (n-1)! 이다.ex) 4! = 4 * 3! = 4*(3*2*1) 핵심 아이디어ㅡ 반복문 / 재귀함수 활용ㅡ long 자료형 변수 사용 ※ 결과ㅡ 반복문과 재귀함수를 통해 두 가지의 방법으로 팩토리얼을 구하였고, 각각의 자료형을 다르게 정의했다.ㅡ 두 함수의 결과가 같을 때 코드 0로 종료되게 만들었고, 다를 때 코드 -1로 종료되게 만들었다. ㅡ 이를 통해 각 자료형의 표현 가능 범위를 비교할 수 있다. ㅡ line 09-12: 음의 정수를 입력할 경우, 함수에서 오류가 날 것을 고려하여 do while 반복문..

카테고리 없음 2019.01.03

#8 - 제어문 [매우 쉬움]

문제ab + ba = 154를 만족하는 (a, b)의 조합을 모두 구하는 프로그램을 작성하시오.(단, a, b는 10보다 작은 양의 정수이다.) ex ) 77+77=154 >> (7, 7)주요 아이디어ㅡ 식에 대한 선행 분석ㅡ 구해낸 조건에서 반복문 활용 주요 문법ㅡ for 반복문, if 조건문 a와 b가 각각 10보다 작은 양의 정수이기 때문에, 문제의 약속에 따라 ab는 10*a+b라고 나타낼 수 있다.ab + ba 를 정리하면 11*(a+b)이기 때문에 준식을 정리하면 a+b=14라는 조건을 얻을 수 있다.for문에서 a는 1부터 9까지만 진행되고, 그 안의 if문에서 14-a로 대표되는 b 또한 10 이상일 경우 출력을 하지 않게 된다. 실행 시간 : 약 1.1ms

카테고리 없음 2018.12.30

#3 - switch [매우 쉬움]

switch 분기문의 활용 문제컴퓨터공학과 동계 캠프 경진대회의 상품이 다음과 같을 때,입력된 등수에 대해서 해당 등수의 상품을 출력하는 프로그램을 switch문을 이용해서 작성하시오. 1등 : 프린터, 컴퓨터, 상금, 상패2등 : 컴퓨터, 상금, 상패,3등 : 상금, 상패4등 : 상패그 외 : 없음 case문에서 break문을 사용하지 않으면 다음 case문까지 수행되는 점을 이용한다. 실행 시간 : 약 1.1ms

카테고리 없음 2018.12.27
728x90