분류 전체보기

    [자료구조] 성적관리프로그램(Singly Linked List)

    Saturday, January 27, 2018 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916..

    [DAY 03] Singly Linked List를 이용한 성적관리프로그램

    12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816..

    [DAY 03] Singly Linked List 2

    Linked List의 종류 1. Single Linked List2. Double Linked List3. Single 환형 Linked List4. Double 환형 Linked List (실무에서 많이 씀) 2. 삭제 삭제는 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512..

    [DAY 02] Singly Linked List 1

    Linked List의 종류 1. Singly Linked List2. Doubly Linked List3. Circular Singly Linked List4. Circular Doubly Linked List (실무에서 많이 씀) linked list를 쓸때 키 포인트가 뭐냐? 동적 메모리는 이름이 없다! 그래서 항상 포인터가 잡고 있어야 한다그래서 내가 가리키고 있는 포인터에서 얘를 움직여도 되는가? 라는 부분을 항상 염두해 두어야 한다움직일 순 있지만, 항상 첫번째 부분을 가리키고 있어야 한다. 그래야 뒤에 있는 곳도 가리킬 수 있다. (그림은 필기 참고) 자기 참조 구조체 구조체 안에 구조체를 넣을 수 있나? (o)그게 자바에서 has-a 관계이다(그림 참고) 지금부터 용도를 확실히 해라! 포인..

    [DAY 01] Review of Pointers

    알고리즘 : 문제 해결력 주소값 : 메모리에 저장된 위치1. &변수명 : 그 변수의 시작주소를 의미한다.2. 배열명3. 함수명 : 코드 영역에 저장된다4. 문자열 문자열의 집합으로 밖에 쓸 수 없다.5. 포인터 (간접 변수; 자기 자신을 위해서 쓰는 게 아니라 접근하는 대상에 쓴다) 주소 표현식그 정체가 배열이면 sizeof(그 배열의 전체 크기)포인터면 sizeof(int) right - left정체를 알면 그 정체부분은 읽지 않는다 Program 01.01 차원을 구분해서 동적 메모리 할당으로 만든 성적관리프로그램

    [Core C] Functions (함수)

    Real World의 동작 표현하기 우리가 프로그래밍하는 이유는 일상생활 속에서의 문제 상황들을 해결하기 위함이라고 소개한 바 있습니다. 마찬가지로 함수를 배울 때 현실 세계의 인간과 연관 지으면 좀 더 쉽게 이해할 수 있습니다. 프로그래밍과 사람은 많이 닮은 점이 있는데, 프로그래밍 역시 사람이 만든 결과물이기 때문입니다. 사람이 먼저 아니겠습니까. 앞서 다룬 변수와 함수를 잘 이해한다면 나중에 배우게 될 구조체와 객체지향 패러다임에서 중요하게 다루는 클래스의 이해에 큰 도움이 될 것입니다. 사람을 어떤 물체 중 하나라고 생각해봅시다. 사람이라는 물체는 키, 몸무게, 시력 등 어떤 속성을 가질 수도 있으며 게임을 한다, 운동한다, 먹는다 등등 어떤 동작을 수행할 수 있습니다. 마찬가지로 코딩에서도 어떤..

    [DAY 03] Program Looping

    Contentsㆍ The for Loop- Relational Operators- Aligning Output- Program Input- Nested for Loops- for Loop Variantsㆍ The while Loopㆍ The do-while Loopㆍ Loop Control Statements- The break Statement- The continue Statement Types of Loops in C 반복문(loop)는 크게 3가지로 나뉜다. 1. for 2. while 3. do-while goto문도 있긴 한데 사연이 있는 녀석이다. 시간 되면 수정하겠다. 결론은 goto문은 쓰면 안된다! 이 세가지에서 공통적으로 지켜줘야 할 중요한 점은 무한루프(Infinite Loop)가 ..

    [DAY 07] 포인터 2

    1. 어디 값인지는 차후의 문제이다. 정체는 나중 문제다. 2. 문제는 address다 => 주소도 차원이 있다![ ], * 포인터의 주소를 알면 그 값을 마음대로 조정할수있다 포인터 장점 : 주소를 암으로써 그 값을 읽고, 쓰고 할 수 있다.포인터란? 주소를 저장하는 변수 주의 : 포인터를 잘못 가리키면 데이터 손실 등의 심각한 문제를 초래한다. 그래서 주소값을 정확하게 넘겨주어야 한다. 포인터의 기능1. 오직 주소(address)만 받을 수 있다. (꼭 주소값을 넣어라는 얘기)2. 받은 주소의 값(value)을 읽을 수 있다.3. 받은 주소의 값을 변경시킬 수 있다.4. 주소 이동이 가능하다. 따라서 정확한 주소값을 주는 것이 중요하다 포인터 선언방법1. 오직 주소(address)만 받을 수 있다. ..

    [IDE] 코드 블럭스(CodeBlocks)에서 다크 테마로 변경하기

    먼저 첨부한 위 파일을 내 컴퓨터에 다운로드합니다. Source configuration file: 위에서 설치한 codeblocks-theme.conf의 경로 Destination configuration file: ... 을 클릭하면 바로 나오는 default.conf 파일 클릭

    [Java] 예외처리

    15. 예외처리 15.1 예외 처리(Exception Handling) 15.1.1 예외처리란? 프로그램이 실행되는 동안 특정한 문제가 일어났을 때 처리를 중단하고 다른 처리를 하는 것 15.1.2 예외가 발생하는 원인 15.1.2.1 시스템 장애 네트워크 오류 사용권한 문제 15.1.2.2 사용자의 입력 실수 존재하지 않는 파일 이름 입력 숫자값 입력란에 일반 문자 입력 받아들일 수 없는 연산 15.1.2.3 에러, 경고, 예외 Error: 컴파일이 안됨 Warning: 실행은 되지만 성능 저하 등의 문제가 발생 가능성 Exception: 컴파일과 실행은 되지만 프로그램이 비정상적으로 종료되는 경우 15.1.2.4 예외 처리를 하는 경우 선택적인 예외 처리 : 예상되는 코드에 처리 필수적인 예외 처리 ..

    [Java] 제네릭과 컬렉션

    14. 제네릭과 컬렉션 14.1 일반화(Generic) 다양한 자료형의 데이터를 처리하기 위해서는 일반화(Generic) 작업이 필요함 // : Declare generic type public class ReactiveBuffer extends Block { public java.util.List buffer = new ArrayList(); // Parameter defined by UML. Do not edit. public final boolean allowDuplicates; public boolean bufferIsEmpty() { return buffer.size()

    배열과 포인터

    What is Array? 1. 오직 주소(address)만 받을 수 있ㄴㅇㅁㅁㄴㅇㅁㄴㅇㅁㄴㅇㅁㄴㅇ 장점(Advantages) 선언(Declaration)→ Datatype 배열의 이름[개수]; 1. 오직 주소(address)만 받을 수 있ㄴㅇㅁㅁㄴㅇㅁㄴㅇㅁㄴㅇㅁㄴㅇ 배열명은 그 배열의 시작 주소를 의미한다!1. 오직 주소(address)만 받을 수 있ㄴㅇㅁㅁㄴㅇㅁㄴㅇㅁㄴㅇㅁㄴㅇ 배열의 선언(Declaration for array)→ Datatype 배열의 이름[개수]; 1. 오직 주소(address)만 받을 수 있다. Datatype 배열의 이름[개수]; Advantages of array 일괄처리를 할 수 있다! ★ 가리키는 Type *변수명; ★ 가리키는 Type *변수명; 1234567891011..