본문 바로가기

정보처리기사/c언어강의

(10)
[C언어(강의)] 35강 (구조체) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=_9ZFUkIJzNU&list=PLniy99c_7ZfrVN_3-mhDUfTLxggLW23l7&index=35  (35강) 구조체, 포인터 이동 * 구조체란?   여러 변수들을 모아서, 하나의 객체를 구성할 때 사용하는 사용자 정의 타입 객체. * 구조체 구성struct 구조체명{  멤버변수1;  멤버변수2;}; * 구조체 정의 및 사용struct person{ char *name; int age;};struct person user1;user1.name = "h user";printf("%s", user1.name)// h user  (구조체 선언 생략)struct person{ char *name;..
[C언어(강의)] 29강~ 34강 (2차원 배열과 포인터, 포인터 배열) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=wg4j5dtAP1E  (29강) 2차원 배열과 포인터 (1)2차원 배열 => 행과 열로 구성.int a [3] [2]  => 3행 2열로 구성.2차원 배열에서 *a는 a [0]의 주소값, **a는 a[0][0] 인 1.  => x = 5, y = 9 int [ ] [3]  => 행값이 없고 열값만 있음, 3개씩 끊기.Data  ------>   Data[0]  = {  1  ,  3  ,  4  }100                   100       100   101  102                      Data[1]  = {  5  ,  2  ,  9  }          p =           1..
[C언어(강의)] 25강~28강 (배열과 포인터) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=kIwVLkLdACo  (25강) 배열과 포인터(1) => 37 47 57 67 77배열  a  :  a[0]  a[1] ........ a[9]      100     100  101 ....... 109   (번지수)int *ptr = a+3   => 100+3 = 103           i   :  0   1   2   3   4*(ptr + i)  : 40 50 60 70 80  (26강) 배열과 포인터(2) * 배열과 포인터의 관계int a[5]배열  a  :  a[0]  a[1]  a[2]  a[3]  a[4]        100    100  101  102  103  104   (번지수)int *b ..
[C언어(강의)] 21강~24강 (배열, 포인터, scanf) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=wgdLUvIYprY  (21강) 배열(1) * 배열이란?같은 자료형의 변수를 연속적으로 묶어 놓은 저장공간. * 배열의 선언int a [ 5 ]      자료형/배열명 /개수=> a[0]  a[1]  a[2]  a[3]  a[4]  라는 5개의 메모리 공간 생성.a라는 변수는 첫번째 공간(배열의0번지)의 메모리 주소값을 가진다.( a[0]의 주소값이 '100'이라면 a가 가지는 주소값도 '100' )  * 이차원 배열같은 자료형의 변수를 행과 열의 연속적인 공간으로 묶어 놓은 것.총 6개의 공간 생성. (실제로는 1차원 배열처럼 나란히 저장.) => 2 msg[2] ~ msg[12] 일때 까지 반복. ( " H e..
[C언어(강의)] 19강~20강 (for, continue, break, 다중for문) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=58Psz9TwlLA  (19강) for, continue, break * continue _ 더이상 아래 문장을 실행하지 않고 반복문 처음으로 돌아감.* break _ 반복문을 빠져나감. => 12  ( i가 3, 9일때만 sum += i 실행 )   (20강) 다중 For문, continue, break * continue => 2   * break=> 1 =>  j가 3, 6, 9 일때 continue  //   i가 4, 8 일때 breaki가 1일 때, j가 3, 6, 9 일때를 제외하면 sum = 6i가 9일때까지 7번 반복하면 (i가 4, 8일때 제외) sum = 42
[C언어(강의)] 14강~18강 (if문, switch문, 반복문, for문, while문, do~while문) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=x2oltFUOAes  (14강) if문, switch문 * if문 _ 조건에 따라서 다른 명령어들을 수행.* switch문 _ 주어진 값에 맞는 명령어들을 수행.  (break 위치 주의*)  => 1 (이때, a=0, b=2)  (15강) 반복문, for문 * 반복문 종류(1) for _ 정해진 횟수만큼 반복.(2) while _ 조건이 만족하는 동안 반복.(3) do ~ while _ 무조건 한번 수행 후 조건이 만족하는 동안 반복.* for문 => 14 ( j = 72 )  (16강) while문 * while문 => i = : 0     i = : 1      i = : 2 sum = : 3  => 30 (..
[C언어(강의)] 12강~13강 (매크로, 비트연산, 삼항연산자) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=ARiPYzAuzmg  (12강) 매크로, 비트연산 * 매크로란 ? 반복적인 일들을 쉽게 하기 위해 만들어 놓은 것.  #define N 10  => 모든 N은 10으로 대체.#define SQR(X) X*X  => X라는 인자를 받으면 X*X로 처리. (함수형태)   SQR(N);   => SQR(10)  => 10 * 10 => 100SQR(N+2);   => N + 2 * N + 2  =>  10 + 2 * 10 + 2  =>  10 + 20 + 2 => 32  ** 매크로일때**  * 비트연산자 종류 * 시프트연산 ( >> )1) 10 >> 2 (우시프트)10 == (이진수변환) ==> 1010우측으로 두개만..
[C언어(강의)] 11강 (진법변환, 비트연산) [ 흥달쌤 유투브 강의 정리 ] https://www.youtube.com/watch?v=avot35M_ETM&t=6s  (11강) 진법변환, 비트연산자 [ 진법변환 ](1) 10진수 -> 2진수 (0~1)19 / 2 = 9 ...19 / 2 = 4 ...14 / 2 = 2 ...02 / 2 = 1 ...019  --->  10011... 32   16   8   4   2   1          => 19를 만들기 위한 자릿수를 채워서 변환해도 됨.            1    0   0   1   1    (2) 2진수 -> 8진수 (0~7)1 0 0 1 1               => 3자리씩(7) 자르기0  1  0  /  0  1  1    4  2  1  /  4  2  1     => 이중..