개발자가 되기 위한 준비를 하려면, 주언어를 정해야 한다. 코테를 보기 위해 자유자재로 다룰 언어, 내 진로를 위해 실질적으로 사용해야 하고 남들보다 더 잘해야만 하는 언어 등 집중적인 공부가 필요할 것이다. 그리고 주언어는 내 나이 쯤 혹은 내 학년 쯤 되면 이미 정
간단한 계산 프로그램을 만들어보자.이 코드는 문제 없이 실행된다. 하지만 아무것도 출력되지 않는다. 이 프로그램에서는 덧셈을 요구하기만 했지, 덧셈한 결과를 어디에도 저장하지 않았고, 결과를 출력하라는 명령도 내리지 않았다. 정말 덧셈만 한 것이다. 그렇다면 우리는 연
Data Type 자료형에 대해 공부하기 전에 간단히 배경지식을 훑어보겠다. 1) 데이터 표현 방식 컴퓨터는 2진수를 사용한다. 두 개의 기호(0, 1)로 데이터를 표현하는 방식이다. Bit, Byte 비트는 컴퓨터가 표현하는 데이터의 최소단위로, 2진수 값 하
printf() printf는 출력을 위한 함수이다. 우리가 정의하지 않았음에도 사용할 수 있기 때문에 printf는 표준함수라는 것을 알 수 있다. printf 함수를 사용해 다양한 타입의 데이터를 출력할 수 있다. > Hello 2023 2023 10 20 위
Iteration 프로그램에서는 반복되는 일이 많다. 로그인할 때 아이디와 비밀번호가 일치할 때까지 입력받는 일도, 같은 화면을 여러번 띄우는 일도, 같은 연산을 거듭해야 하는 일도 모두 반복이 필요하다. 반복하려면 같은 코드를 계속 작성해야 할까? 그렇지 않다. 반
Conditional 프로그램을 짜는 데 있어서 Branch(분기)는 매우 중요하다. 코드가 순서대로 전부 실행되는 것만으로는 한계가 매우 크다. 선택적으로 실행할 수 있어야한다. The if Statement 앞으로 많이 사용하게 될 if문은 if와 else
사용자로부터 9 이하의 양의 홀수 하나를 입력받은 후(이 값은 패턴의 행과 열의 길이를 의미함) 아래와 같이 5개 패턴을 출력하는 하나의 프로그램을 작성하시오(네번째 패턴에서 는 가운데 행만 전체 공백으로 출력함). 단, 반드시 중첩 반복문을 포함해야 하며, 양의 홀
Functions C언어에 있어 매우 중요한 부분인 함수에 대해 알아보겠다. 함수는 기능을 제공한다. 왜 함수를 만드는가 하면 기능을 나누어 실행하기 위해서라고 생각할 수 있다. 예를 들어 리스트에서 키값을 찾아 삭제, 검색을 할 수 있는 프로그램을 만들 때, 키값
#3 두개의 정수를 입력받아 GCD(Greatest Common Divisor)를 구하라. 풀이 1) 반복문 이용 풀이 2) 재귀함수 이용 #5 작은 수부터 차례로 10개의 소수를 출력하는 프로그램을 작성하라. (2, 3, 5, 7, 11, 13, 17, 19,
배열은 다수의 데이터를 저장하고 처리하기 위한 자료구조이다.배열은 1차원일수도, 다차원일 수도 있다.먼저 1차원 배열에 대해 공부하겠다.배열을 생성할 때 배열 원소의 자료형, 배열 이름, 배열 길이를 선언해주어야 한다.위와 같이 선언한다. 배열을 생성하면 각 원소들은
Pointer 포인터는 매우 중요하며 어려운 개념이므로 차근차근 공부해야한다. 포인터를 이용하면 메모리에 직접 접근 가능하다. 포인터 변수는 주소값을 저장하는 변수이므로, 포인터 변수에 대해 공부하려면 먼저 메모리 주소 체계에 대해 알아야한다. 주소 cell 단위는
배열의 이름은 포인터이다. 배열의 시작 주소값을 저장하고 있다. 배열의 시작 주소값은 배열 첫 번째 요소의 주소값과 동일하다. 다음 예시를 보면 알 수 있을 것이다.배열 이름의 주소 : 0053FDF4첫 번째 요소 : 1 주소 : 0053FDF4첫 번째 요소 : 2 주
입력받은 정수 값들을 짝수와 홀수로 구분한 후 두번째 작은 홀수를 출력하는 프로그램을 작성한다. 먼저 main() 함수에서 배열 A[], B[], C[]의 크기를 각각 10, 10, 10으로 선언한다. 사용자로부터 2 이상 10 이하의 수를 하나 입력받은 후 그 수만큼
Pass Array to Function Pass Parameter 인자 전달은 어떻게 이루어질까? 값의 복사를 통해 전달된다. 함수 호출 시 전달되는 인자는 매개변수에 복사된다. 따라서 함수에 변수를 넣어 호출해도 함수 종료 후 해당 변수의 값이 변경되는 것은 아
입력된 영단어가 회문인지 아닌지 판별하는 프로그램을 작성하라.(편의를 위해 대소문자 구분)작성 코드문자열 입력 : level회문입니다.문자열 입력 : noon회문입니다.문자열 입력 : cookie회문이 아닙니다.문자열 입력 : party회문이 아닙니다.Bubble So
다차원 배열은 2차원 이상의 배열을 말한다. 전에 공부했던 1차원 배열 외에도 2차원, 3차원 배열이 있다.2차원 배열은 다음과 같이 선언한다.컴퓨터의 메모리는 1차원 구조이므로 2차원 배열은 메모리 상에 다음과 같이 존재한다.👉배열의 행 수를 명시하지 않아도 선언과
Pointers to Pointers(Double Pointer) 이중 포인터 또는 더블 포인터는 포인터 변수를 가리키는 포인터 변수를 말한다. 포인터 변수도 변수이므로 주소를 가지며, 그 주소 또한 다른 포인터 변수가 저장하는 것이 가능하다. 이 때 포인터 변수의
프로그래머가 정의한 함수들은 모두 프로그램 실행시 메인메모리에 저장되어 실행된다. 함수의 이름은 메모리 상에 저장된 함수의 주소값을 의미한다. 함수의 주소값 또한 양의 정수이므로 포인터 변수에 저장할 수 있다. 이러한 포인터 변수를 함수 포인터 변수라 한다.함수 포인터
디버깅은 프로그래밍을 하는 데 있어 매우 중요하고 활용도가 높다. 디버깅을 얼마나 잘 활용하는가는 앞으로 복잡하고 긴 코드를 짤 때 중요하게 작용할 수 있다.다만 코딩을 시작한 지 수 년이 지났지만 디버깅을 하는 것은 익숙해지지를 않는다.😥디버깅은 코드의 오류(버그)
출력 결과 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 1
데이터의 입출력은 지금껏 공부하면서 접했던 개념이다. 프로그램에 데이터가 들어오는 것이 입력, 데이터가 나가는 것이 출력이다. 입력 장치로는 키보드, 마우스 등이 있고 출력 장치로는 모니터, 프린터 등을 생각해볼 수 있겠따. Stream 데이터의 흐름을 가리켜 스트
Structure 구조체란 변수를 묶어 새로운 자료형을 정의하는 것이다. 이 때 변수는 포인터와 배열을 모두 포함한다. 예를 들어 x좌표와 y좌표를 묶어 구조체를 정의하면 두 데이터를 함께 관리하고 사용하는 것이 편리해진다. 다음과 같이 선언할 수 있다. 다음은 사
파일 입출력은 대단히 중요한 부분이고, 학교에 다니던 때 파일 입출력을 가볍게 생각하고 제대로 이해/공부하지 않은 것이 나중에 큰 어려움이 되었었다. 지금 복습하는 이유도 파일 입출력, 메모리 할당, 문자열 처리 등을 소홀히 했던 것이 크다. 이번에는 후회하지 않도록
프로그램 실행 시 운영체제에 의해 할당되는 메모리 구조는 다음과 같이 4개 영역으로 구분된다.코드 영역text 영역이라고도 하는 코드 영역은 실행할 프로그램의 코드가 저장되는 메모리 공간이다. 저장된 명령어들을 CPU가 읽어와 처리한다.데이터 영역data 영역은 전역변
사용자로부터 문자열을 입력 받은 후 그 문자열에서 아래 기능들을 수행하는 프로그램을 작성하시오. 자음 및 모음의 빈도 구하기 공백없이 출력하기 단어 중에서 가장 긴 단어와 가장 짧은 단어 찾기 종료하기 1번 기능에서 모음은 a, e, i, o, u를 의미하며 3번 기
실행파일은 컴파일과 링크의 과정을 거쳐 생성된다. 이 때 컴파일을 하기 전 선행처리 과정을 거치게 된다. Macro, Preprocessor 선행 처리는 말 그대로 선행하는, 컴파일 이전의 처리를 의미한다. 소스 파일은 선행처리기에 의해 선행처리 되고, 컴파일러에
파일 분할은 프로그래밍을 하는 데 있어 중요한 부분이다. 간단한 예제에서는 굳이 분할하지 않았지만, 코드가 길어지고 프로그램이 커지면 지금처럼 하나의 파일에 쭉 작성할 수는 없다. 특히 C++이나 JAVA와 같은 객체지향 언어들은 파일을 나누는 것이 빈번하다. 이는 모
#1 간단한 도서 관리 프로그램을 작성하라. 제목, 저자명, 페이지 수에 대한 정보를 저장할 수 있는 구조체를 정의하고 구조체 배열을 선언하는 방식으로 한다. main 함수에서는 사용자로부터 3권의 도서에 대해 정보를 입력받고 입력이 끝나면 도서정보를 출력하라. ma