
총 22개
-
[자료구조] 동적메모리를 구현하고 출력하는 소스코드2025.05.051. 동적 메모리 할당 이 코드는 동적 메모리 할당을 사용하여 구조체 배열을 생성하고 값을 할당한 후 출력하는 예제입니다. malloc() 함수를 사용하여 메모리를 동적으로 할당하고, 구조체 포인터 p를 통해 메모리에 접근하여 값을 설정합니다. 마지막으로 free() 함수를 사용하여 동적으로 할당된 메모리를 해제합니다. 1. 동적 메모리 할당 동적 메모리 할당은 프로그램 실행 중에 필요한 메모리 공간을 동적으로 할당하는 기능입니다. 이를 통해 프로그램은 실행 시간에 메모리 요구량을 유연하게 조절할 수 있습니다. 동적 메모리 할당은 ...2025.05.05
-
[자료구조] 리스트 활용하여 쇼핑해야 할 목록과 목록 수를 구현한 소스코드2025.05.051. 리스트 이 코드는 리스트 자료구조를 사용하여 쇼핑 목록을 관리하는 프로그램을 구현하고 있습니다. 리스트에 항목을 추가하고, 리스트의 길이를 구하며, 특정 인덱스의 항목을 가져오는 기능을 제공합니다. 이를 통해 사용자가 쇼핑 목록을 효과적으로 관리할 수 있습니다. 2. 구조체 이 코드는 구조체를 사용하여 쇼핑 항목을 표현하고 있습니다. 각 항목은 32자 이내의 문자열로 저장되며, 구조체 배열을 통해 여러 개의 항목을 관리할 수 있습니다. 구조체를 활용하여 데이터를 효율적으로 저장하고 처리할 수 있습니다. 3. 함수 이 코드는 세...2025.05.05
-
[건국대학교 컴퓨터프로그래밍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언어로 쉽게 풀어쓴 자료구조 개정 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
-
[건국대학교 컴퓨터프로그래밍2 A+][2024 Ver] 과제52025.01.201. 구조체 정의 및 패킹 과제(5)에서는 구조체를 정의하고 패킹하는 내용을 다룹니다. 먼저 int 타입 변수 id, char 타입 변수 pass, char 포인터 타입 변수 name으로 이루어진 User1 구조체를 정의합니다. 이 구조체의 크기는 13바이트입니다. 다음으로 동일한 변수들로 이루어진 User2 구조체를 정의하는데, 이 경우 패딩으로 인해 크기가 16바이트가 됩니다. 이후 User1과 User2 구조체를 선언하고, 두 구조체의 크기 차이와 각 구조체의 pass와 name 변수 포인터 값의 차이를 출력합니다. 2. 메모...2025.01.20
-
[자료구조] 구조체 배열을 이용한 추가 삭제 SUM을 구현한 소스코드2025.05.051. 자료구조 이 코드는 배열을 이용한 리스트 ADT(Abstract Data Type)를 구현한 것입니다. 구조체 ArrayListType을 정의하고, 초기화, 추가, 삭제, 합계 등의 기능을 구현하고 있습니다. 배열의 크기는 MAX_LIST_SIZE로 정의되어 있으며, 배열의 길이를 나타내는 length 변수를 사용하여 리스트의 크기를 관리합니다. 이를 통해 리스트의 기본적인 CRUD(Create, Read, Update, Delete) 연산을 수행할 수 있습니다. 2. 배열 이 코드에서는 배열을 사용하여 리스트를 구현하고 있습...2025.05.05
-
[A+레포트] 자료구조_C언어로 구현한 배열과 구조체의 차이점을 설명하시오2025.01.141. 배열 C언어에서 배열은 같은 유형의 데이터 요소들을 연이어 저장하는 데 사용됩니다. 배열을 활용하여 성적 처리 프로그램을 구현할 경우, 학생들의 성적 정보를 효율적으로 관리할 수 있습니다. 하지만 배열은 숫자 데이터만 저장할 수 있기 때문에, 학생의 이름이나 학번과 같은 문자열 정보를 함께 저장하고 처리하기 어려운 단점이 있습니다. 2. 구조체 C언어의 구조체는 다른 유형의 변수들을 하나의 논리적 단위로 묶어 관리하는 데 사용됩니다. 구조체를 활용하면 학생의 성적 정보뿐만 아니라 이름, 학번 등 다양한 정보를 함께 저장하고 처...2025.01.14
-
컴퓨터 내부의 자료표현 방법과 선형구조의 자료의 삽입과 삭제 방식2025.05.061. 데이터 구조 데이터 구조란 데이터를 효율적으로 활용하기 위해 데이터의 특성에 맞게 데이터를 분류, 정리, 저장, 처리하는 모든 업무를 말합니다. 컴퓨터에서 데이터를 처리하려면 먼저 컴퓨터에 데이터를 표현해야 컴퓨터가 처리할 수 있습니다. 컴퓨터는 이렇게 표현된 데이터를 특정 프로그램에서 처리합니다. 2. 단순 구조 단순 구조는 True/False, 정수, 실수, 문자열 등 컴퓨터에서 기본으로 제공되는 데이터 유형입니다. 3. 선형 구조 선형 구조는 파일 시스템 또는 데이터베이스에 레코드를 하나만 링크하는 형식입니다. 이것은 배...2025.05.06
-
[건국대학교 컴퓨터프로그래밍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언어로 쉽게 풀어쓴 자료구조 개정 3판 6장(연결리스트) 연습문제 (해설 포함)2025.05.161. 원형 연결 리스트 원형 연결 리스트는 마지막 노드의 포인터가 첫 번째 노드를 가리킨다. 2. 배열 n번째 요소를 찾는다는 것은 특정한 값을 탐색한다는 것이 아니다. 즉 특정 요소로 접근하겠다는 의미인데, 이를 가장 빠르게 할 수 있는 것은 당연히 배열이다. 배열은 인덱스를 통해 특정 요소로 가장 빠르게 접근할 수 있는 자료구조다. 한 번에 접근이 가능하므로 당연히 시간복잡도는 O(1)이다. 3. 단순 연결리스트 단순 연결리스트의 마지막 노드의 링크(link) 필드는 항상 NULL을 가리킨다. 따라서 last->link==NUL...2025.05.16