
총 22개
-
c언어 배열과 구조체를 활용한 성적관리프로그램(소스코드 첨부)2025.05.061. 자료구조 자료구조는 '데이터에 편리하게 접근하고, 변경하기 위해서 데이터를 저장하거나 조직하는 방법'을 의미한다. 효율성, 추상화, 재사용성을 증가시키기 위해 상황에 따른 적절한 자료구조를 선택할 필요가 있다. 대부분의 자료구조는 특정한 상황에 놓인 문제를 해결하는 데에 특화되어 있다. 2. 배열 배열은 동일한 타입의 데이터들을 묶는 구조이다. 배열을 사용하면 하나의 변수에 데이터를 저장할 수 있어 변수를 하나씩 전부 선언하는 것보다 훨씬 더 효율적이다. 배열을 이용할 때 연속적인 메모리 공간이 할당되기 때문에, 하나의 변수에...2025.05.06
-
컴퓨터 내부의 자료표현 방법과 선형구조의 자료의 삽입과 삭제 방식2025.05.061. 데이터 구조 데이터 구조란 데이터를 효율적으로 활용하기 위해 데이터의 특성에 맞게 데이터를 분류, 정리, 저장, 처리하는 모든 업무를 말합니다. 컴퓨터에서 데이터를 처리하려면 먼저 컴퓨터에 데이터를 표현해야 컴퓨터가 처리할 수 있습니다. 컴퓨터는 이렇게 표현된 데이터를 특정 프로그램에서 처리합니다. 2. 단순 구조 단순 구조는 True/False, 정수, 실수, 문자열 등 컴퓨터에서 기본으로 제공되는 데이터 유형입니다. 3. 선형 구조 선형 구조는 파일 시스템 또는 데이터베이스에 레코드를 하나만 링크하는 형식입니다. 이것은 배...2025.05.06
-
자료구조_C언어로 구현한 배열과 구조체의 차이점을 설명하시오2025.01.271. 배열 배열은 동일한 타입의 데이터를 메모리상에 연속적으로 저장하는 자료 구조를 말한다. 예를 들어, int 형의 성적을 저장하기 위한 배열이나, char 형의 문자들을 저장하기 위한 문자열 배열 등이 있다. 배열은 인덱스를 사용하여 각 요소에 접근할 수 있으며, 모든 요소가 같은 타입이어야 한다. 2. 구조체 구조체는 서로 다른 타입의 데이터를 하나의 단위로 묶어서 관리할 수 있는 방법으로, 예를 들어, 학생의 이름과 학번, 각 과목 점수 등 서로 다른 타입의 정보를 하나로 묶어 구조체로 정의할 수 있다. 3. 배열과 구조체의...2025.01.27
-
자료구조 1학기 중간시험2025.05.051. 1차원 정수배열 정렬 1차원 정수배열 x[10]을 0으로 초기화하고 내림차순으로 정렬하는 함수를 작성하고 메인프로그램을 완성하는 문제입니다. 함수의 첫 번째 매개변수는 배열의 주소이고, 두 번째 매개변수는 새로운 값입니다. 2. 구조체 배열 입력 struct student {char name[10], int student_number, char depart[10];}; 구조체를 정의하고, struct student stu[10]에 키보드에서 값을 넣는 함수를 작성하고 메인 프로그램을 완성하는 문제입니다. 3. 단순 연결리스트 ...2025.05.05
-
자료구조 구조체 배열를 활용한 소스코드 구현2025.05.051. 구조체 배열 이 코드는 구조체 배열을 사용하여 학생 정보를 관리하는 예제입니다. 구조체 StudentType에는 학생의 이름과 생일 정보가 포함되어 있으며, 최대 200명의 학생 정보를 저장할 수 있습니다. Display 함수는 학생 정보를 출력하고, Replace 함수는 첫 번째 학생의 정보를 변경합니다. main 함수에서는 첫 번째 학생의 정보를 초기화하고, Display와 Replace 함수를 호출하여 학생 정보를 확인하고 변경합니다. 1. 구조체 배열 구조체 배열은 프로그래밍에서 매우 유용한 데이터 구조입니다. 구조체는...2025.05.05
-
[자료구조] 동적메모리를 구현하고 출력하는 소스코드2025.05.051. 동적 메모리 할당 이 코드는 동적 메모리 할당을 사용하여 구조체 배열을 생성하고 값을 할당한 후 출력하는 예제입니다. malloc() 함수를 사용하여 메모리를 동적으로 할당하고, 구조체 포인터 p를 통해 메모리에 접근하여 값을 설정합니다. 마지막으로 free() 함수를 사용하여 동적으로 할당된 메모리를 해제합니다. 1. 동적 메모리 할당 동적 메모리 할당은 프로그램 실행 중에 필요한 메모리 공간을 동적으로 할당하는 기능입니다. 이를 통해 프로그램은 실행 시간에 메모리 요구량을 유연하게 조절할 수 있습니다. 동적 메모리 할당은 ...2025.05.05
-
[건국대학교 컴퓨터프로그래밍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
-
[건국대학교 컴퓨터프로그래밍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
-
[자료구조] 리스트 활용하여 쇼핑해야 할 목록과 목록 수를 구현한 소스코드2025.05.051. 리스트 이 코드는 리스트 자료구조를 사용하여 쇼핑 목록을 관리하는 프로그램을 구현하고 있습니다. 리스트에 항목을 추가하고, 리스트의 길이를 구하며, 특정 인덱스의 항목을 가져오는 기능을 제공합니다. 이를 통해 사용자가 쇼핑 목록을 효과적으로 관리할 수 있습니다. 2. 구조체 이 코드는 구조체를 사용하여 쇼핑 항목을 표현하고 있습니다. 각 항목은 32자 이내의 문자열로 저장되며, 구조체 배열을 통해 여러 개의 항목을 관리할 수 있습니다. 구조체를 활용하여 데이터를 효율적으로 저장하고 처리할 수 있습니다. 3. 함수 이 코드는 세...2025.05.05
-
c언어로 쉽게 풀어쓴 자료구조 개정 3판 6장(연결리스트) 연습문제 (해설 포함)2025.05.161. 원형 연결 리스트 원형 연결 리스트는 마지막 노드의 포인터가 첫 번째 노드를 가리킨다. 2. 배열 n번째 요소를 찾는다는 것은 특정한 값을 탐색한다는 것이 아니다. 즉 특정 요소로 접근하겠다는 의미인데, 이를 가장 빠르게 할 수 있는 것은 당연히 배열이다. 배열은 인덱스를 통해 특정 요소로 가장 빠르게 접근할 수 있는 자료구조다. 한 번에 접근이 가능하므로 당연히 시간복잡도는 O(1)이다. 3. 단순 연결리스트 단순 연결리스트의 마지막 노드의 링크(link) 필드는 항상 NULL을 가리킨다. 따라서 last->link==NUL...2025.05.16