CS/C언어
-
숫자 정렬(버블 정렬, 삽입 정렬) - 바로 실행해보면서 배우는 C언어CS/C언어 2020. 1. 2. 21:40
두 변수의 값 바꾸기 #include int main() { int a; int b; int temp; scanf("%d %d", &a, &b); temp = a; a = b; b = temp; printf("%d %d", a, b); return 0; } 버블 정렬 가장 간단한 정렬 알고리즘. 서로 이웃한 값들을 비교해 큰 값을 뒤로 넘기며 정렬한다. 최종적으로는 작은 값 → 큰 값 순서대로 정렬된다. 값 비교 과정 때문에 다른 정렬에 비해 속도가 느리지만, 구현하기가 매우 간단하다. 버블 정렬로 배열 내림차순 정렬하기 #include int main() { int arr[10] = { 9, 17, 5, 6, 124, 112, 1, 3, 87, 55 }; int temp; // 두 값을 바꿀 때 사용할..
-
조건문 - 바로 실행해보면서 배우는 C언어CS/C언어 2019. 12. 29. 23:52
if문 C언어는 절차지향언어이기 때문에 순서대로 조건문을 체크한다. if - else if - else : if가 참이면 else if, else는 건너뛴다. (위의 조건을 만족하면 아래 조건을 확인하지 않고 건너 뜀.) if - if - if : 첫 번째 if가 참이어도 두 번째, 세 번째 if를 건너뛰지 않고 모두 확인한다. (위의 조건을 만족해도 아래 조건을 확인) 프로그램 성능을 위해 조건 확인 시간 줄이기 1) 참일 가능성이 높은 조건을 if 조건으로 둔다. if의 조건이 참이면 else if, else를 건너뛰기 때문에 조건 확인 시간을 줄일 수 있다. 2) 조건이 중첩되는 경우, if문 여러 개를 사용하기보다는 else if를 사용해 중첩되는 조건은 건너뛸 수 있도록 한다. break문, c..
-
일차원 배열 - 바로 실행해보면서 배우는 C언어CS/C언어 2019. 12. 28. 22:38
배열(Array) : 하나의 변수에 여러 개의 값을 저장할 수 있는 데이터 타입 배열 선언 및 초기화 int arr1[5] = { 1, 33, 47, 102, 155 }; //선언과 동시에 초기화 int arr2[5] = { 5, 10 }; //0번째, 1번째 값을 5, 10으로 초기화하고 나머지는 모두 0으로 초기화 int arr3[5] = { }; //모두 0으로 초기화 int arr4[5]; //선언만 하고 초기화하지 않음 int arr6[] = { 11, 22, 33, 44 }; //배열의 크기는 자동으로 4로 초기화됨 배열의 데이터 타입에 맞는 값만 담을 수 있다. *초기화하지 않았을 경우 : 배열의 갯수를 넘어서는 범위를 출력하거나, 초기화하지 않을 배열을 출력했을 때는 대부분 쓰레기값이 나온..
-
연산자와 수식 - 바로 실행해보면서 배우는 C언어CS/C언어 2019. 12. 23. 07:05
기본 연산자 + - * / % 사칙연산 연산자 증감 연산자 ++ -- 변수에 담겨있는 값을 증가시키거나 감소시키는 연산자. 전위와 후위로 나뉘어짐 전위 증감 연산자 : 값을 먼저 증가시키거나 감소시킨 후에 코드 실행 (++a) 후위 증감 연산자 : 코드 실행 후에 값을 증가시키거나 감소시킴. (a++) 관계 연산자 ==같다 != 같지 않다 / true : 1, false : 0 논리 연산자 논리곱 연산(&&), 논리합 연산(||) 복합 대입 연산자 +=, -=, ... 연산과 동시에 변수에 대입시키는 연산자 비트 연산자 2진수 값을 이용해 연산하는 연산자 비트 연산은 정수/정수로 변환 가능한 타입만 연산 가능. (실수, 포인터 등은 X). 비트 단위로 계산하기 때문에(=비트 단위에서 직접 조작하기 때문에..
-
문자열 - 바로 실행해보면서 배우는 C언어CS/C언어 2019. 12. 22. 16:57
정수 데이터타입 char 크기 : 1바이트(8비트), -128 ~ +127 아스키 코드 방식으로 256개의 글자 표현 가능. (영소문자, 특수문자, 숫자 등) * 아스키 코드 : 문자를 숫자에 하나씩 매칭시켜 표현하는 방식. * 유니코드 : 문자를 2바이트로 처리해 256256 = 약 6만5천개 문자 표현 가능. (한글 등) char ch = 'a'; 형식지정자 %c 사용하면 문자('a')로 출력, %d 사용하면 숫자(97, 'a'의 아스키코드)로 출력됨. char ch = 'ab'; char 데이터타입은 1바이트로, 한 글자만 담을 수 있다. 따라서 마지막으로 입력한 b만 담긴다. char 타입 변수에 여러 글자를 담고 싶다면 char 타입 배열을 만들면 된다. char ch[5] = "abcd"; 한..
-
반복문 - 바로 실행해보면서 배우는 C언어CS/C언어 2019. 12. 21. 22:41
반복문(Loop) : 특정 작업을 반복적으로 수행하는 프로그래밍 문법. 주로 일정한 법칙 및 변화가 있는 작업을 할 때 사용된다. 반복은 사람보다 컴퓨터에게 더 적합한 작업으로, 반복문을 사용하면 컴퓨터가 반복적인 작업을 대신하게 할 수 있고 코드도 간략화시킬 수 있다. for문 일정한 횟수만큼 반복할 때 주로 사용되는 반복문. 초기값(int i 변수 선언), 조건식, 변화 조건 3가지 요소로 구성되어 있다. for(초기값; 조건식; 변화 조건) { 반복할 코드 } *반복할 코드가 한 줄 밖에 없을 경우 중괄호 생략 가능. 중괄호를 생략할 경우 for문 바로 아래에 있는 코드만 실행하게 된다. *반복문 바깥에서도 i를 사용하고 싶다면 초기값을 for문 전에 선언할 수 있다. (초기 C언어에서는 반복문 초..