글을 시작하기 전에 먼저, 왜 CS에 대해 공부 하려했는가를 서두에 두고싶다. 코드스테이츠를 하면서 제일 나에게 부족헀던 건 CS에대한 지식이었다. 나는 컴퓨터공학과를 전공하지않았다. 부트캠프에서 수업해주는 내용의 강의도 물론 유익하고 실전에 바로 쓸 수 있는 스킬을
변수와 상수를 공부하기 전에 아래 C언어의 소스코드 내용을 먼저 이해해보자.변수 선언 시 자료형과 변수명을 입력하고, 원하는 경우 초기값을 적용할 수 있다. 여기서잠깐! 초기화 되지 않은 변수는 쓰레기 값이 들어간다. 만약 a라는 변수에 값을 넣지 않는다면 빌드 오류가
C언어에서의 기본 입출력 방법을 공부하고, 입력받은 데이터를 가공하여 출력해보자 C언어에서 특정한 변수에 값을 넣기 위해서 scanf()를 사용합니다. 1)vs에서 scanf()는 취약한함수로 분류되어있다. 따라서 \_CRT_SECURE_NO_WARNINGS를 적용한다
1) 연산자(Operator)란 연산을 수행하는 기호를 의미 (+,-,\*...등등)2) 피연산자(Operand)란 연산에 포함되는 변수나 상수를 의미 3) 아래 예제의 A+B에서 A와B는 피연산자에 해당, +는 연산자에 해당한다. C언어에는 다양한 연산자가 존재한다.
1) IF문 내부의 조건을 검사해 프로그램의 진행 경로를 결정합니다.2) IF문은 조건의 개수가 많지 않을 때 사용하는 것이 유리합니다.예제 1)예제 2)1) 다양한 조건이 존재할 때 사용하면 소스코드를 짧게 유지할 수 있습니다.예제 1)이 코드에는 문제가 있는데 만약
가장 많이 사용되는 반복문! 1) FOR문 내부의 조건에 부합하면 계속해서 특정한 구문을 실행합니다.2) 반복문을 탈출하고자 하는 위치에 break 구문을 삽입합니다.예제1) 1부터 100까지의 정수 출력하기 예제2) 1부터 N까지의 합 출력하기1) 무한 루프(Infi
1) 함수는 입력을 받아 처리한 뒤에 출력하는 구조를 가진다.1) 함수는 특정한 기능에 대한 소스코드가 반복되는 것을 줄이도록 해준다.2) 함수의 형태는 아래와 같다. 함수에서 매개변수와 반환할 값은 경우에 따라 없을 수도 있다. 매개변수 및 반환할 값이 없을 때의 자
3개의 숫자가 있을 때 가장 큰 숫자를 구하는 프로그램을 작성한다고 생각합시다.기본적으로 변수의 이름을 a, b, c로 설정하면 된다는 것을 예상할 수 있습니다.그렇다면 숫자가 100개라면 어떻게 처리할 수 있을까요?비효율적이긴 하지만 변수 100개를 만들어서 선언할
지금까지의 변수는 그 자체로 자신의 자료형에 맞는 값을 저장했었다.포인터(Pointer) 변수는 특이한 변수로, 메모리 주소를 저장한다.포인터는 특정한 변수 자체가 존재하는 메모리 주소의 값을 가진다. 따라서 아래 예제에서는 기존에 a를 이용해도 5라는 값을 찾을 수
C 프로그램의 문자는 아스키 코드(Ascii Code)를 따릅니다.아스키 코드는 0~127중의 1바이트로 구성되며 주요 문자를 출력하도록 해줍니다.0은 48, 대문자 A는 65, 소문자a는 97이다. 캐릭터형 자체에 숫자를 넣어서 처리할 수 있다. 문자 입출력에서 형식
문자열은 말 그대로 문자들의 배열을 말한다. 문자열은 컴퓨터 메모리 구조상에서 마지막에 널(NULL)값을 포함한다. 널(NULL)값은 문자열의 끝을 알리는 목적으로 사용됩니다. printf()함수를 실행하면 컴퓨터는 내부적으로 NULL을 만날 때까지 한글자씩 출력한다.
컴퓨터에서 프로그램이 실행되기 위해서는 프로그램이 메모리에 적재(Load)되어야 합니다. 당연히 프로그램의 크기를 충당할 수 있을 만큼의 메모리 공간이 있어야 하는데일반적인 컴퓨터의 운영체제는 메모리 공간을 네 가지로 구분하여 관리합니다. 전역변수(전체를 총괄하는 변수
cs에 대해 기본적으로 알고 넘어가면 좋을 문제들을 간단히 정리해 보았다프로세스는 운영체제로부터 자원을 할당받아서 실행되고스레드는 프로세스로부터 자원을 할당받아 실행 되는 것이다. 운영체제 -> 프로세스 -> 스레드 thread(스레드)란 CPU이용의 기본 단위, 프로
컴퓨터가 계산을 수행하기 위해서는 비트 또는 바이트의 형태로 기억장치에 저장할 수 있어야 한다. 컴퓨터가 나중에 데이터를 검색할 수 있도록 말그대로 보관을 하는 것인데 기억장치는 종류마다 서로 다른 속도를 가지고 내부에 저장할 수 있는 양에 차이가 있다. CPU(중앙처
컴퓨터는 자료를 어떻게 처리하는 걸까요? 🧐컴퓨터가 정보를 저장하고 연산을 수행하기 위해서 bit(비트)라는 측정단위를 사용하는데 비트는 쉽게 이진 숫자라는 뜻을 가진 "binary digit" (바이너리서치 들어보았지 부들부들)의 줄임말이며, 0과 1 두가지 값만
입력한 자료를 출력하려면 어떤 과정이 필요할까요? 🤔컴퓨터는 단순하다 input을 받으면 Output으로 출력하는 과정이라고 생각하면 되는데 그 안에서 입력받은 내용을 출력값으로 처리하는 과정을 '알고리즘'이라고 한다. 📌좀 더 정확하게 말하자면🧞♂️ 알고리즘이
많은 알고리즘 중에 첫번째로 선형탐색에 대해서 알아보자!가장 단순!선형탐색은 원하는 원소가 발견될 때까지 처음부터 마지막까지 차례대로 탐색한다. 원하는 것을 찾을 때까지 모든 자료를 확인해야한다. 선형 탐색 알고리즘은 정확하지만 아주 효율적이지 못한 방법이다. 리스트
컴퓨터 과학과 수학에서 정렬 알고리즘(sorting algorithm)이란 원소들을 번호순이나 사전 순서와 같이 일정한 순서대로 열거하는 알고리즘이다. 효율적인 정렬은 탐색이나 병합 알고리즘처럼 (정렬된 리스트에서 바르게 동작하는) 다른 알고리즘을 최적화하는 데 중요하