
총 52개
-
[건국대학교 컴퓨터프로그래밍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
-
C언어에서 메모리를 효율적으로 활용하기 위한 포인터의 활용2025.05.061. 포인터 정의 포인터는 변수의 주소를 나타내는 변수이다. 변수는 메모리 상의 어떤 위치에 할당되며, 이 위치를 주소(address)라고 한다. 포인터는 이러한 변수의 주소를 저장하고, 이 주소를 통해 변수에 접근할 수 있다. 포인터를 선언할 때는 포인터 변수의 자료형을 지정해야 하며, 포인터 변수의 자료형은 포인터가 가리키는 변수의 자료형과 일치해야 한다. 2. 포인터 변수 정의와 예제 포인터 변수는 메모리의 주소를 저장하는 변수이다. 포인터 변수를 사용하면 변수의 값을 직접 변경하거나, 함수의 인자로 포인터를 사용하여 함수 외...2025.05.06
-
[건국대학교 컴퓨터프로그래밍2 A+][2024 Ver] 과제102025.01.201. C언어 고급 실습 이 프레젠테이션은 C언어 고급 실습 과제 10번에 대한 내용을 다루고 있습니다. 과제 10번은 총 19개의 문제로 구성되어 있으며, 각 문제마다 코드, 결과, 설명이 제공됩니다. 주요 내용으로는 평균 함수, 객체 생성 및 복사, 함수 오버로딩, 디폴트 매개변수, 정적 멤버 함수 및 변수 등이 포함되어 있습니다. 1. C언어 고급 실습 C언어는 시스템 프로그래밍 언어로 널리 사용되는 언어입니다. 고급 실습을 통해 C언어의 다양한 기능과 활용 방법을 심도 있게 배울 수 있습니다. 메모리 관리, 포인터 활용, 구조...2025.01.20
-
컴퓨터를 이용한 전염병 확산 시뮬레이션2025.05.111. 전염병의 정의 전염병이란 병원체에 의해 감염되어 발병하는 질환이다. 병원체에 의한 감염은 다양한 경로로 이루어지며 특히 여러 사람에게 전파되는 감염병을 전염병이라고 한다. 2. 반복문 반복문에는 DO, while, do-while, for 문이 있다. DO 문은 변수 I가 1의 초깃값을 갖고 한 번씩 반복할 때마다 1씩 증가하면서 5보다 작거나 같을 때 실행한다. while 문은 조건식이 참인 동안 문장을 반복해서 실행한다. do-while 문은 문장을 먼저 실행하고 마지막 부분에서 종료 조건을 검사한다. for 문은 초기식을...2025.05.11
-
c언어로 쉽게 풀어쓴 자료구조 개정 3판 6장(연결리스트) 연습문제 (해설 포함)2025.05.161. 원형 연결 리스트 원형 연결 리스트는 마지막 노드의 포인터가 첫 번째 노드를 가리킨다. 2. 배열 n번째 요소를 찾는다는 것은 특정한 값을 탐색한다는 것이 아니다. 즉 특정 요소로 접근하겠다는 의미인데, 이를 가장 빠르게 할 수 있는 것은 당연히 배열이다. 배열은 인덱스를 통해 특정 요소로 가장 빠르게 접근할 수 있는 자료구조다. 한 번에 접근이 가능하므로 당연히 시간복잡도는 O(1)이다. 3. 단순 연결리스트 단순 연결리스트의 마지막 노드의 링크(link) 필드는 항상 NULL을 가리킨다. 따라서 last->link==NUL...2025.05.16
-
C언어 간단한 게임 만들기 (가위 바위 보)2025.05.051. C언어 프로그래밍 이 프로젝트는 C언어를 사용하여 간단한 가위바위보 게임을 구현하는 것입니다. 코드에는 rand() 함수를 사용하여 컴퓨터가 랜덤으로 가위, 바위, 보를 선택하도록 하였고, switch-case 문을 사용하여 선택된 것을 출력하는 부분이 포함되어 있습니다. 또한 입력값이 유효하지 않을 경우 다시 선택하도록 하는 기능도 구현되어 있습니다. 2. 게임 프로그래밍 이 프로젝트는 간단한 가위바위보 게임을 구현하는 것으로, 게임 프로그래밍의 기본적인 요소들이 포함되어 있습니다. 플레이어와 컴퓨터의 선택을 받아 승패를 결...2025.05.05
-
c언어로 쉽게 풀어쓴 자료구조 개정 3판 3장 연습문제 (해설 포함)2025.05.141. 2차원 배열의 메모리 크기 2차원 배열이 메모리에서 차지하는 크기는 행의 개수와 열의 개수, 그리고 각 요소의 크기를 곱하여 계산할 수 있다. 문제에서 제시된 10행 20열의 int형 2차원 배열은 10 x 20 x 4 = 800바이트의 크기를 차지한다. 2. 배열의 시작 주소 배열의 시작 주소는 배열의 첫 번째 요소가 저장되는 공간의 주소이다. 문제에서 배열의 첫 번째 요소가 1000번지에 저장된다고 했으므로, 10번째 요소는 1000 + (4 x 10) = 1040번지에 저장된다. 3. 배열의 크기 비교 배열의 크기는 각 ...2025.05.14
-
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
-
C언어 스케치 연습문제 솔루션 - 제 04장 연산자2025.04.301. 연산자와 피연산자 프로그램 언어에서 연산자와 피연산자의 조합으로 구성된 수식을 표현식이라 한다. 표현식은 식을 평가(evaluation)하여 항상 하나의 결과 값을 갖는다. 2. 산술연산자 산술연산자는 +, -, *, /, %로 각각 더하기, 빼기, 곱하기, 나누기, 나머지 연산자이다. 나머지 연산자 %의 피연산자는 반드시 정수이어야 한다. 3. 논리연산자 논리 연산자 &&와 ||는 피연산자 두 개 중에서 왼쪽 피연산자 만으로 전체 결과가 결정된다면 오른쪽 피연산자는 평가하지 않는다. 4. 대입연산자 대입연산자의 왼쪽 부분에는...2025.04.30
-
자료구조_C언어로 구현한 배열과 구조체의 차이점을 설명하시오2025.01.271. 배열 배열은 동일한 타입의 데이터를 메모리상에 연속적으로 저장하는 자료 구조를 말한다. 예를 들어, int 형의 성적을 저장하기 위한 배열이나, char 형의 문자들을 저장하기 위한 문자열 배열 등이 있다. 배열은 인덱스를 사용하여 각 요소에 접근할 수 있으며, 모든 요소가 같은 타입이어야 한다. 2. 구조체 구조체는 서로 다른 타입의 데이터를 하나의 단위로 묶어서 관리할 수 있는 방법으로, 예를 들어, 학생의 이름과 학번, 각 과목 점수 등 서로 다른 타입의 정보를 하나로 묶어 구조체로 정의할 수 있다. 3. 배열과 구조체의...2025.01.27