본문 바로가기

Programming Language/basic C Language

8. 구조체 8. 구조체 1. Intro 지금까지 우리는 변수를 사용해 데이터를 저장하고 반복문, 조건문을 이용해 데이터를 가공하며 함수를 이용해 코드를 있어보이게 다듬는 과정을 살펴보았다. 그 내용을 잘 이해하고 익숙해지면 본인이 필요한 간단한 프로그램을 만드는 것이 어렵지는 않을 것이다. 하지만 좀 더 많은 자료, 복잡한 자료를 우리가 다룬 변수와 배열만 사용해 처리하고자 한다면 코드가 상당히 복잡해질 것이다. 이러한 부분을 보완하기 위해, 어떤 구조를 가지고 있는 고차원의 변수를 생성할 수 있도록 존재하는 개념이 바로 구조체이다. 2. Struct 학생들의 성적을 관리하는 프로그램을 만들어 보자. 학생의 이름, 학번, 단과대학, 학부, 과목, 성적 정보를 입력하고, 어떤 학생의 학번을 입력했을 때 그 학생의 정..
5. 함수 5. 함수 1. Intro 수학을 공부하다 보면 복잡한 수식을 f(x), g(x) 따위의 함수로 바꾸어 편하게 계산하곤 한다. 이렇게 함수를 사용하는 덕분에 복잡한 식을 보다 간단하게 풀고 직관적인 형식으로 표현할 수 있다. c언어에도 이러한 함수라는 개념이 존재한다. 함수를 사용하는 덕분에 길고 복잡하며 반복되는 코드를 보기 좋게 정리할 수 있으며, 체계적인 코드를 작성할 수 있다. 2. 함수의 선언 함수의 기본 틀은 다음과 같다. int function(int argument) { return argument; } [반환자료형] [함수이름]([인자자료형] [인자이름]) { // [1] [2] [3] [4] [함수내용]; [함수반환값]; // [5] }[1]. 반환 자료형c언어의 함수는 자판기와 비슷하..
4. 제어문 - if, else if, else, switch~case 4. 제어문 - if, else if, else, switch~case 1. Intro 이전 단원을 통해 많은 정보를 반복 작업을 통해 간단하게 처리하는 방법에 대해 알아보았다. 하지만 우리는 그러한 단순 일괄 계산보다 더 많은 것을 원할 때가 있다. 예를 들어 1부터 10까지의 정수를 출력하는 데, 2의 배수는 2배를, 3의 배수는 3배를 해서 출력한다고 하자. 단순 반복문에 의한 일괄 계산으로는 하지 못할 것이다. 이러한 연산의 방향을 제어하는데 필요한 개념이 제어문이다. 1. if 영어 단어 if는 '만약에 ~라면'이라는 뜻을 가진다. 동일하게, 조건문 if는 실행 조건이 참일때 동작을 하도록 하는 조건문이다. 기본 형식은 아래와 같다. if (/*조건식*/) { 실행할 동작; }예제를 통해 실제로..
3. 배열, 반복문 (while, for, do~while) 3. 배열, 반복문 (while, for, do~while) 1. Intro 이전 단원에서는 정보를 담는 그릇인 변수와 변수형의 종류인 자료형, 그리고 변수와 함께 사용해 여러가지 연산을 할 수 있도록 해주는 연산자에 대해 살펴보았다. 이제 우리는 아주 간단한 계산기 정도는 만들 수 있게 되었다. 하지만 우리가 기대하는 컴퓨터 프로그램은 "많은 양의 자료를" "반복적으로" 처리할 수 있어야 한다. 마리오가 점프를 단 한 번만 할 수 있다거나, 기껏 뽑아놓은 캐리어가 인터셉터를 단 한 기만 태울 수 있다면 매우 실망스러울 것이다. 마리오가 점프를 마음껏 할 수 있도록 하기 위해, 그리고 캐리어가 인터셉터를 8기 태우기 위해 필요한 개념이 바로 반복문과 배열이다. 배열을 배열답게 사용하기 위해서는 반복문의 ..
2. 변수와 자료형과 연산자 2. 변수, 자료형, 연산자 1. Intro 프로그램의 3단계 - 입력, 처리, 출력 - 과정의 입력과 출력 부분을 지난 단원에서 다루었다. 앞으로의 내용은 모두 정보의 처리 과정과 관련된 것들을 주로 다룰 것이다. 정보를 처리하는 과정에 있어 정보를 담는 그릇인 변수, 변수에 담긴 정보의 종류에 대한 정보인 자료형, 그리고 정보를 가공하는데 필요한 연산자들을 알고 적절히 사용하는 것은 매우 중요하다. 2. 변수와 자료형 변수는 자료를 저장하는 저장 공간으로, 주기억장치의 메모리의 일부를 사용한다. 변수를 사용하는 과정은 다음과 같다.1. 변수 선언 2. 변수 값 설정 3. 변수를 목적에 맞게 사용 다음 예시를 살펴보자. #include int main() { int a; // [1] a = 10; //..
1. 표준입출력 1. 표준입출력1. Intro프로그램은 일종의 함수이다. 외부로부터 입력을 받아, 그것을 가공한 후, 결과값을 반환한다. 이러한 일련의 과정에서 입력과 출력의 역할은 정말 중요하다. 이번 단원에서는 C 언어의 기본적인 구조와 간단한 출력과 입력을 하는 방법에 대해 다룬다. 2. C언어의 기본 구조C 언어의 기본적인 구조는 다음과 같으며, 다음의 기본적인 구조는 반드시 존재하여야 한다. #include // [1] int main() // [2] { // [3] printf("This Is Vegetable"); // [4] return 0; // [5] } // [6][0]. 프로그램의 동작 순서 프로그램이 실행될 때에는 맨 윗줄부터 차례로 실행한다. [1]번째 줄 실행 -> [2]번째 줄 실행 -> ...
0. 개발 환경 구축하기 0. 개발 환경 구축하기0. IntroProgramming language로 소프트웨어를 만들기 위해서는 해당 언어에 적합한 개발 환경이 구축되어야 한다. 살짝 잘못된 비유이긴 하지만, ppt를 만들기 위해 PowerPoint를, 스프레드시트 문서를 만들기 위해 Excel을 사용하는 것 처럼 C언어로 프로그램을 만들 때 그런 역할을 하는 프로그램 -IDE, Integrated Development Environment, 통합 개발환경- 을 사용해 편리하게 작업할 수 있다. C/C++를 위한 통합 개발환경은 다음과 같이 있다. 1. Visual Studio Visual Studio는 Microsoft 사에서 제공하는 통합 개발 환경으로,C/C++과 더불어 C#을 이용한 wpf, winform 개발, pyt..
CodeHighlightingTest #include #pramga #define HELLO_WORLD 1 int main() { printf("hello world"); return 0; } int double float char struct typedef goto using namespace if else do while switch case default continue break enum const