총 77개
-
재귀함수와 포인터의 개념 및 활용2025.01.191. 재귀함수 재귀함수는 자기 자신을 다시 호출하는 함수로, 주어진 문제를 더 작은 하위 문제로 분해하여 해결하는 방식으로 동작합니다. 재귀함수는 종료 조건을 명시적으로 정의해야 하며, 이 조건이 충족될 때 함수 호출을 중단하고 반환값을 계산합니다. 재귀함수는 분할 정복 알고리즘, 백트래킹, 데이터 구조 순회, 수학적 계산 및 문제 해결, 문자열과 배열 처리 등 다양한 분야에서 활용됩니다. 2. 포인터 포인터는 메모리의 주소를 저장하는 변수로, C언어에서 메모리 관리와 복잡한 데이터 구조 구현에 중요한 역할을 합니다. 포인터는 메모...2025.01.19
-
c언어로 쉽게 풀어쓴 자료구조 개정 3판 4장 연습문제 (해설 포함)2025.05.141. 스택 스택은 후입선출 (Last In First Out, LIFO) 구조를 가지며, 데이터를 삽입하는 push 연산과 삭제하는 pop 연산을 수행할 수 있다. 스택의 top은 일반적으로 -1로 초기화되며, 요소를 삽입할 때마다 top이 1씩 증가한다. 스택이 공백 상태일 때 top은 -1이 되고, 포화 상태일 때 top은 MAX_STACK_SIZE-1이 된다. 스택에서 데이터를 삽입하고 삭제하는 연산의 시간복잡도는 O(1)이다. 후위 표기법에서는 피연산자를 만나면 스택에 삽입하고, 연산자를 만나면 스택에서 2개의 피연산자를 꺼...2025.05.14
-
컴퓨터를 이용한 전염병 확산 시뮬레이션2025.05.111. 전염병의 정의 전염병이란 병원체에 의해 감염되어 발병하는 질환이다. 병원체에 의한 감염은 다양한 경로로 이루어지며 특히 여러 사람에게 전파되는 감염병을 전염병이라고 한다. 2. 반복문 반복문에는 DO, while, do-while, for 문이 있다. DO 문은 변수 I가 1의 초깃값을 갖고 한 번씩 반복할 때마다 1씩 증가하면서 5보다 작거나 같을 때 실행한다. while 문은 조건식이 참인 동안 문장을 반복해서 실행한다. do-while 문은 문장을 먼저 실행하고 마지막 부분에서 종료 조건을 검사한다. for 문은 초기식을...2025.05.11
-
C언어 프로그램 개발과정을 단계별로 자세히 설명하시오2025.05.061. 프로그램의 목적 정의 제일먼저, 개발하려는 프로그램을 결정해야 합니다. 프로그램이 요구하는 정보, 수행할 계산 및 조작, 사용자에게 제공하고 필요한 정보 등에 대해 생각해야 합니다. 이 계획 단계에서는 C언어와 같은 컴퓨터언어가 아니라 일반적으로 사용하는 일상 언어로 생각하는 것이 좋습니다. 하지만 사용하는 컴퓨터 언어의 일반적 특성에 기초를 두는 것이 좋습니다. 2. 알고리즘의 개발 문제를 해결할 방법을 모색하는 것입니다. 원하는 결과를 얻기 위해서는 컴퓨터가 수행해야 하는 일을 순서대로 모아둔 것으로 프로그램 개발에 있어 ...2025.05.06
-
과제(2) | 4주차 | C언어 고급 실습2025.01.201. 배열과 포인터 이 과제에서는 배열과 포인터의 개념을 이해하고 활용하는 방법을 다룹니다. 배열의 선언과 초기화, 포인터 변수의 선언과 활용, 포인터와 배열의 관계 등을 실습하여 C언어 프로그래밍 능력을 향상시킬 수 있습니다. 2. 포인터 타입 한정자 이 과제에서는 포인터 타입 한정자(const, volatile 등)의 개념과 사용법을 학습합니다. 포인터 변수의 값과 포인터가 가리키는 값을 각각 수정할 수 있는지 여부를 이해하고 적절한 포인터 타입 한정자를 사용하는 방법을 익힙니다. 3. 이차원 배열과 포인터 이 과제에서는 이차원...2025.01.20
-
C언어 간단한 게임 만들기 (가위 바위 보)2025.05.051. C언어 프로그래밍 이 프로젝트는 C언어를 사용하여 간단한 가위바위보 게임을 구현하는 것입니다. 코드에는 rand() 함수를 사용하여 컴퓨터가 랜덤으로 가위, 바위, 보를 선택하도록 하였고, switch-case 문을 사용하여 선택된 것을 출력하는 부분이 포함되어 있습니다. 또한 입력값이 유효하지 않을 경우 다시 선택하도록 하는 기능도 구현되어 있습니다. 2. 게임 프로그래밍 이 프로젝트는 간단한 가위바위보 게임을 구현하는 것으로, 게임 프로그래밍의 기본적인 요소들이 포함되어 있습니다. 플레이어와 컴퓨터의 선택을 받아 승패를 결...2025.05.05
-
C언어 스케치 연습문제 솔루션 - 제 04장 연산자2025.04.301. 연산자와 피연산자 프로그램 언어에서 연산자와 피연산자의 조합으로 구성된 수식을 표현식이라 한다. 표현식은 식을 평가(evaluation)하여 항상 하나의 결과 값을 갖는다. 2. 산술연산자 산술연산자는 +, -, *, /, %로 각각 더하기, 빼기, 곱하기, 나누기, 나머지 연산자이다. 나머지 연산자 %의 피연산자는 반드시 정수이어야 한다. 3. 논리연산자 논리 연산자 &&와 ||는 피연산자 두 개 중에서 왼쪽 피연산자 만으로 전체 결과가 결정된다면 오른쪽 피연산자는 평가하지 않는다. 4. 대입연산자 대입연산자의 왼쪽 부분에는...2025.04.30
-
[건국대학교 컴퓨터프로그래밍2 A+][2024 Ver] 과제72025.01.201. C언어 클래스와 객체 이 프레젠테이션에서는 C언어의 클래스와 객체에 대해 다루고 있습니다. 주요 내용은 다음과 같습니다: 1. Circle 클래스: 반지름(radius) 멤버변수와 면적(getArea) 멤버함수로 구성됩니다. 디폴트 생성자와 매개변수 생성자를 사용하여 객체를 생성할 수 있습니다. 2. Rectangle 클래스: 가로(width), 세로(height) 멤버변수와 면적(getArea) 멤버함수로 구성됩니다. 디폴트 생성자, 매개변수 생성자, 정사각형 판단 함수(isSquare)를 포함하고 있습니다. 3. Po...2025.01.20
-
C언어 스케치 연습문제 솔루션 - 제 07장 배열2025.04.301. 배열 배열(array)은 변수를 일일이 선언하는 번거로움을 해소할 수 있고, 여러 변수들이 같은 배열이름으로 일정한 크기의 연속된 메모리에 저장되는 구조로 그 사용도 간편하다. 배열선언 시 초기 값 지정이 없다면 반드시 배열크기는 명시되어야 한다. 배열의 크기를 지정하는 부분에는 변수, 양수의 정수 상수와 기호 상수 또는 이들의 연산식이 올 수 있다. 첫 번째 배열원소를 접근하는 첨자 값은 0이며, 다음 두 번째 원소는 1이다. 배열선언 후 배열원소를 접근하려면 배열이름 뒤에 대괄호 사이 첨자(index)를 이용한다. 배열에서...2025.04.30
-
[건국대학교 컴퓨터프로그래밍2 A+][2024 Ver] 과제42025.01.201. 구조체 과제(4)에서는 구조체 rect를 정의하고, 이를 원소로 가지는 배열 shapes를 선언 및 초기화합니다. 이후 for문을 통해 shapes 배열의 각 원소에 대해 calc_area 함수를 실행하여 면적을 계산하고 출력합니다. 2. 포인터 2번 문제에서는 int형 변수 x, y의 값을 swap 함수를 통해 교환합니다. swap 함수는 int형 포인터 변수 px, py를 매개변수로 받아 간접 참조를 통해 값을 교환합니다. 3번 문제에서는 레퍼런스를 사용하여 동일한 기능을 구현합니다. 3. qsort 4번 문제에서는 qso...2025.01.20
