목록Programming (35)
밍키의 마법세상

오늘은 2차원 배열에 대해 알아볼것이다! 2차원 배열은 이런 표라고 생각하면 편하다! [0] [0] [0] [1] [0] [2] [0] [3] [0] [4] [1] [0] [1] [1] [1] [2] [1] [3] [1] [4] [2] [0] [2] [1] [2] [2] [2] [3] [2] [4] 그럼 배열을 선언해보자! 자료형 배열이름[세로크기][가로크기]; 자료형 배열이름[세로크기][가로크기] = {{값,값,값},{값,값,값}}; 2차원 배열은 선언하면서 초기화하려면 {}로 가로 요소들을 먼저 묶어주고, 가로줄을 세로크기만큼 다시 묶어준다. 2차원 배열에 접근하려면 배열[세로인덱스][가로인덱스] 로 해준다. 2차원 배열에서도 첫번째 인덱스는 0이다! 또한 2차원 배열에서도 0으로 초기화 하는법은 i..

한번 30명의 성적 평균을 구해보자 흠..... 아무리 생각해도 이건 너무 귀찮다. 이런 상황에서 배열을 사용하면 아주 쉽게 해결이 가능하다. 배열은 같은 자료형의 변수를 일렬로 늘어놓은 형태이며 반복문과 합해지면 연속적인 값을 손쉽게 처리할 수 있다!! 자료형 배열이름[크기] 자료형 배열이름[크기] = {값, 값, 값}; 배열에 값이 저장된 공간을 요소(element)라 한다. 배열에서 각 요소에 접근하려면 배열에 []를 사용하여 인덱스를 지정해주면 된다. 배열[인덱스] - 한가지 조심해야 할점은 인덱스는 항상 0부터 시작한다! - 배열을 선언할때 요소가 0인 배열은 선언할 수 없다. - 배열을 선언할 때 값을 초기화 한다면 크기선언을 생략할 수 있다. 그러면 이제 배열을 0으로 초기화 해보자! 자료형..
kbhit : "keyboardhit"의 약자로입력을 받는동안 정지하는 scanf의 단점을 보완하기 위해 사용자로부터 키입력을 받았는지 받지 않았는지 검사하는 함수. 반환형 int 입력O (참) 1 입력X (거짓) 0 if (kbhit()) --> 키입력을 받을때마다 조건문이 실행된다 주로 getch와 함께 쓰는데 getch함수는 버퍼가 없어 코드가 정지하는 일이 없기 때문.
우리는 값을 지정할때 변수를 사용해왔다. 그렇다면 변수는 어디에 저장되는 것일까??--> 보통 변수는 메모리의 특정 장소에 있으므로 메모리 주소로도 표현할 수 있다.메모리주소는 컴퓨터마다, 실행될때마다 항상 바뀐다.시스템이 32비트인니 64비트인지에 따라 메모리 주소의 범위도 달라진다. 32비트: 16진수 8자리64비트: 16진수 16자리 포인터란?--> 어떤 값을 저장하는게 아닌 어떠한 값의 주소를 저장하는 것이다. 포인터를 쓰는 의미는? 1. 변수 지역성 보완 --> 함수간 변수 사용 2. 복사본을 만들지 않고 주소만 알려줌으로서 용량 및 처리시간에 이득을 볼 수 있다. 3. heap 영역을 참조하기 위해서.--> 동적할당으로 만든 변수를 보기 위해 포인터가 필요하다 4. 연속된 메모리 참조를 위해...
goto 레이블; 레이블 --> 해당 레이블로 건너 뛴다!적절히 활용하면 중복되는 코드를 줄일 수 있고, 코드를 좀더 간결하게 만들수 있다. 특히 에러 처리에 유용하기 때문에 리눅스 커널에서도 자주 사용된다!! 너무 과도하게 써 코드가 꼬이지 않게 조심하자!! (과도하게 꼬인 코드를 스파게티 코드라 부른다) 12345678910111213141516171819202122int main() { int num1; scanf("%d", &num1); if (num1 == 1) { goto ONE; //1이면 ONE으로 간다. } else if (num1 == 2) { goto TWO; } else // 1도 2도 아니면 EXIT으로 바로 간다. goto EXIT; ONE: //레이블 ONE printf("1입..
for문을 이용해 별찍기를 모두 해보자!! 1. 계단식 찍기 1234567891011int main() { int n; scanf("%d", &n); for (int i = 1; i
연산자 설명 & 비트 AND | 비트 OR ^ 비트 XOR(OR의 반대) ~ 비트 NOT 비트를 오른쪽으로 옮김 (2의 거듭제곱을 나누기) &= 비트 AND 연산 후 할당 |= 비트 OR 연산 후 할당 ^= 비트 XOR 연산 후 할당 = 비트를 오른쪽으로 옮긴 뒤 할당 0 0 0 0 0 0 0 1 (1) 0 0 0 0 0 0 1 1 (3) & 5 부호비티를 덮어쓰게된다. -64 + 4 = 601 1 1 1 0 0 0 1 (-15) 적은 공간에 정보를 저장해야하고, 빠른 속도가 필요할 때 쓴다. 특히 CPU같이 내부 저장공간이 매우 적은 곳에서 각종 상태를 비트로 저장한다. 특정 비트를 켜기--> 플래그 |= 켤 비트위치 1234567891011#include"stido.h"int main(){ unsig..
scanf(서식(%d), 변수의 주소(&a)); 12#define _CRT_SECURE_NO_WARNINGS// scanf함수의 경고표시 cs 정수를 입력받고 문자를 입력받을시 개행문자가 문자에 입력되어버린다.이럴땐 정수입력받은후에 fflush()나 getchar()를 적어 개행문자를 먼저 입력시켜버리자. 12345678#include"stido.h"int main(){ int a; char b; scanf("%d", &a); scanf("%c", &b); //입력을 받지 않고 프로그램이 끝나버린다! return 0;}Colored by Color Scriptercs 12345678#include"stido.h"int main(){ int a; char b; scanf("%d", &a); fflush()..