반응형

읏차, IT차 326

[정보처리기사] C언어 - 제어문(if문, switch문)

if문이란? 조건에 따라서 다른 명령어들을 수행 switch문이란? 주어진 값에 맞는 명령어들을 수행 입력값에 따른 출력값을 수행한다. 주어진 값에 해당할 때부터 조건을 실행하여 break문을 만날 때까지 수행한다. 구조 switch case ~(break) case ~(break) case ~ break switch문의 주의 사항 break가 어디에 걸리는지 주의한다. break가 없다면 break가 걸릴 때까지 수행한다. 예제 #include int main(){ int a=0, b=1; switch(a){ case 0 : printf("%d₩n", b++); break; case 1 : printf("%d₩n", ++b); break; case 2 : printf("%d₩n", b); break;..

[정보처리기사] C언어 - 삼항연산자(조건연산자) 사용법

삼항연산자란? 간단하게 항이 세 개라는 의미 단항 = a++, a--등 이항 = a = 3, a+b 삼항 = 조건에 따라서 다른 명령을 수행하는 연산자 구조: 조건? 참: 거짓 ex1. int a = 10>5 ? 10: 5; printf("%d", a); 해설 조건 10>5? 조건이 참일 때의 수행할 값은 10 조건이 거짓일 때의 수행할 값은 5 10>5가 참이니깐 10으로 출력 만약 조건이 거짓이였다면 5가 출력됐을 것 ex2 void main(void){ int a, b; a = 20; b = (a>10)?a+a:a*a; printf("b=%d₩n", b); } 해설 조건 : a>10? 참이면 a+a로 출력 거짓이면 a*a로 출력 20>10이 참이므로 a+a -> 20+20가 수행되어서 b=40이 출..

[정보처리기사] C언어 - 매크로(feat. 매크로를 적용한 비트연산문제)

매크로란? - 반복적인 일들을 쉽게 하기 위해 만들어 놓은 것들이다. - 함수는 한번 호출하면 사라지지만 - 매크로는 모든 프로그램에 들어가게 할 수 있다 #define N 10 -> 앞으로 나오는 모든 N은 10으로 대체한다 #define SQR(X) X*X -> X의 인자를 받으면 X*X를 수행할 거야(함수처럼 만들어 놓은 매크로) ex. #define N 10 #define SQR(X) X*X SQR(N); SQR(N+2); 해설 SQR(N); -> 10*10 인 100출력 주의!!!1 SQR(N+2); -> 12*12인 144출력이 아니고!!!!!!!!!!!!!!!!!!!!!!! N+2가 아래 형태와같이 그대로 넘어간다 10 + 2 * 10 + 2 연산자 우선순위에 의해서 2*10이 먼저 계산 되..

[정보처리기사] C언어 - 진법전환(2진수,8진수,16진수) / 비트연산(&,|,^,<<,>>)

진법 전환을 하기 전 비트연산이 무엇이냐면 비트연산이란? 10진수를 2진수로 만든 이후에 우리가 10진수를 + - * / 하듯이 2진수를 가지고 2진수의 연산자로 연산하는 것을 뜻합니다. 10진수를 2진수로 변환하는 방법 2가지 1. 10진수를 2로 나눌 수 있을 때까지 나누고 나머지를 보자 ex. 10진수 19를 2진수로 표현 나누기 19 나머지 2 9 1 ↑ 2 4 1 ↑ 2 2 0 ↑ 2 1 0 ↑ → → ↑ 2로 나누고 나머지를 아래에서 위로 적은 수를 나열해보면 10011입니다. 2. 1부터 2를 곱한 수를 우측부터 좌측 순으로 적고, 해당 수를 만들기 위해 필요한 숫자들에 1을 채워주면 됩니다 ex. 19를 위의 방법으로 2진수 처리를 해보면 ←←←←←←←← 32 16 8 4 2 1 →→→→→..

[정보처리기사] C언어 - 출력 변환 기호(%d, %f, %c, %s, %x, %o, 16진수, 8진수 변환)

출력 변환 기호란? 그릇의 크기정해서 출력물로 표현해준다. 기호 의미 데이터 %d 부호 있는 10진수 출력 double 정수, 문자 %f 고정 소수점으로 출력 float 정수, 실수 %c 문자 출력 character 문자 %s 문자열 출력 string 문자열 포인터 %x 16진수 출력 hexadecimal number 정수 %o 8진수 출력 octal number 정수 출력 변환 기호란? 예를 들어 printf("%d", 10)이면 10이라는 값이 %d에 대입돼서, 부호 있는 10진수로 출력이 된다 %d는 문자도 받을 수 있는데, 모든 문자는 ASCII코드로 숫자화 할 수있어서, 문자를 대입해도 숫자로 출력할 수 있다. ex. 1. printf("값1: %d, 값2: %d", 10, 5); -> 값1: ..

[정보처리기사] C언어 - 관계연산자/논리연산자, 조건문

관계연산자의 종류 참은 1, 거짓은 0을 출력합니다. 연산자 예 결과값 == 10==9 0 != 3 != 3 0 > 5 > 5 0 >= 5 >= 5 1 3 0 [1 && 0 이고 하나라도 거짓이므로 0] || 5 > 5 || 5 >= 5 1 [0 || 1 이고 하나라도 참값이 존재 하기때문에 1출력] 조건문 단순 if문 조건에 만족하면 {} 문을 탄다 if (조건) { 조건이 만족할 때의 처리; } if ~ else문 if (조건) { 조건이 만족할 때의 처리; } else { 조건이 아닐 때의 처리 } 다중 if문 if( 조건1) { 조건1이 만족할 때의 처리; } else if (조건2) { 조건2가 만족할 때의 처리 } else { 모든 조건이 아닐 때의 처리 } Q1 #include int mai..

[정보처리기사] C언어 - 연산자 우선순위

연산자가 궁금하시다면 https://accompani-i.tistory.com/185 [정보처리기사] C언어 - 산술연산자(a++, ++a, a+= 등) 산술연산자 종류 이항 연산자 단항 연산자 대입 연산자 이항 연산자 항이 2개다 a + b같이 항이 2개로 구성된 연산자 종류: + - * / % +는 덧셈 연산 -는 뺄셈 연산 *는 곱셈 연산입니다. /는 우리가 아 accompani-i.tistory.com 먼저 학습 하고 오시길 권해드립니다. 산술 연산자의 종류 우선순위 예 종류 높음 낮음 () 괄호 연산자 ++, --, ~, ! 단항 연산자 *, /, % 산술 연산자 +, - 산술 연산자 비트 연산자 = 비교 연산자 ==, != 관계 연산자 &, ^, | 비트 연산자 &&, || 논리 연산자 =, ..

[카톡 오류] pc카톡에서 R눌러도 읽음 처리 안됨

카톡에서는 이렇게 카톡이 쌓이고 굳이 들어갔다 나오지 않아도 읽음 처리 할 수 있게 단축키를 제공하는데요 피시카톡에서 읽음처리 하는 단축키는 R 키입니다 처음에 저는 이 기능을 알고 윈도우에서 사용 해봤는데 작동이 안먹는 겁니다. 그래서 뭐 따로 설정을 해줘야 하나 보다 하고 기능을 안썼는데.. 맥을 사용할 때 카톡을 사용하면서 R을 사용해봤는데 잘 되는겁니다!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 윈도우만 오면 R키가 안먹어서 왜그런가 하고 여러 시도를 하던 중 해결책을 알았습니다.. 제pc에서만 그런지 모르겠는데 한/영키를 타는 것 같습니다.. 해결책 한/영키를 변환하고 R을 누르면 깔끔하게 읽음처리가 되더라구요.. R을 눌러도 읽음 처리가 안되셨던 분들 한/영키..

[정보처리기사] C언어 - 산술연산자(a++, ++a, a+= 등)

산술연산자 종류 이항 연산자 단항 연산자 대입 연산자 이항 연산자 항이 2개다 a + b같이 항이 2개로 구성된 연산자 종류: + - * / % +는 덧셈 연산 -는 뺄셈 연산 *는 곱셈 연산입니다. /는 우리가 아는 나눗셈과는 좀 다릅니다. 헷갈리는 / 연산자와 % 연산자를 살펴보면 / 연산자: 몫을 나타내는 연산자 ex. 5/3 = 1(몫을 나타내고 나머지는 나타내지 않는다) 정수/정수 = 정수 (소수점 나타내지 않는다) %연산자: 나머지를 나타내는 연산자 ex. 5%3 = 2 (몫이 1이고 나머지가 2이기 때문) 단항 연산자 종류: ++, -- a++; -> 식을 먼저 처리하고 1을 증가시킨다 (할당 후 증가) ++a; -> 먼저 1을 증가시키고 식을 진행 시켜라 (증가 후 할당) 하단의 예재로 확..

[정보처리기사] C언어 - 변수의 종류와 유효범위(지역변수, 전역변수, 정적변수, 동적변수)

변수의 종류(쉽게쉽게) 지역변수: 지역안에서만 사용 전역변수: 공동으로 쓰는 것 정적변수: 공동으로 쓰는 것 동적변수: 그때 그때 만들어서 사용 지역변수란? 함수/블록 안에서 선언하는 변수 함수/블록의 종료와 함께 메모리상에서 소멸 초기값이 없으면 쓰레기 값이 들어감 스택 영역에 저장됨 ex. void main(){ if ( 1 ) { // 1은 참이니까 블록 안으로 들어감 int num1 = 10; // num1이라는 공간에 10의 값을 할당 printf("%d, num1); // 10 출력됨 } // 블록 끝남 printf("%d", num1); // 블록 끝났으니까 메모리상에서 소멸됨 } 전역변수란? 함수 블록 밖에서 선언하며, 전체 함수에 영향을 미친다. 프로그램이 종료될 때 메모리상에서 소멸 초..

반응형