programming/c

    [Core C] Array | 배열

    Array (배열) 우리가 힘들게 프로그램을 만드는 이유는 많은 데이터를 빨리 처리할 수 있기 때문입니다. 단, 많은 양의 데이터를 메모리에 저장하는 방법이 필요한데 이때 배열을 사용합니다. 배열을 만들고 사용하는 방법, 또 배열이 문자열을 어떻게 저장하는지 살펴봅니다. 동일한 자료형을 저장할 저장 공간이 많이 필요한 경우 일일이 변수를 선언하는 일은 만만치 않습니다. 이때 '배열'을 사용하는데, 배열을 사용하면 많은 변수를 하나의 선언문으로 간단하게 대체할 수 있습니다. 배열을 만들고 사용하는 방법에 대해 알아보겠습니다. FIFA에서 만든 축구 게임, FIFA 21에서 홈페이지에 게시되어 있는 FIFA 21 Ratings 중 한 선수의 데이터를 통해 배열을 사용하는 방법을 알아보도록 하겠습니다. 이 중..

    String Class

    String Instance is ? ∴ String Instance is Immutable instance. equals ㄴ Concatenating

    Inheritance

    Inheritance 연관된 일련의 class들에 대해 공통적인 규약을 정의할 수 있다. ㆍ 상속의 대상이 되는 클래스- 상위 클래스(super class) / 기초 클래스(base class) / 부모 클래스(parent class)- 하위 클래스 / 유도 클래스 / 자식 클래스 자바는 프로그램이 복잡해지는 것을 막기 위해 다중 상속이 아닌 단일 상속만을 지원한다. 12345678910111213141516171819202122class AA { public void display() { System.out.println("I'm AA!"); } } public class InherTest01 extends AA { public static void main(String[] args) { InherTe..

    주말숙제

    1. 다음 문제의 출력 결과를 쓰시오. (10점)(이 문제에서 double 타입의 크기는 8byte로가정, a : 0x1234)voidmain(){ double a[10] = { 0 }; printf("%p\n", a + 1); printf("%p\n", a + 2); printf("%p\n", a + 3); printf("%p\n", a - 1); printf("%p\n", a - 2);}1242 / 1250 / 1258/ 1226 / 1216 2. 다음과 같이 출력되도록 (////) 의 코드를 작성하시오. (10점)1 01 0 10 10 1 01 01 0 10 10 1 01 0 1 0 1 intmain(){ intarr[5][5] = { 0 }; int i,j; (///////////////////)..

    [Algorithm] Baby Gin

    Baby Gin은 카드로 게임을 한다.각 카드는 0 에서 9 까지의 수가 쓰여져 있다.게이머는 6 장의 카드를 받는다. 받는 사람이 Baby Gin을 가진다면 이 게이머가 이기고 아니면 진다.Baby Gin을 가지기 위해서는 모든 6장의 카드가런(runs)이거나, 트리플리트(tripletes) 이여야 한다. • 런이라는 말은 3장의 카드가 연속적인 번호를 말한다.ex. 345 혹은 789 .., 단, 901 은 런이아니다.• 트리플리트는 같은 번호를 가지는 세장의 카드를 말한다.ex. 000 혹은 444, ... 몇 가지 예를 보면,• 667767 은 Baby Gin이다. 두 개의 트리플리트(666, 777)• 054060 은 Baby Gin이다. 하나의 런과 하나의 트리플리트• 101123 은 Baby..

    [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 파일 클릭

    배열과 포인터

    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..