*배열이란?

 

- 배열(array) : 동일한 타입의 데이터가 여러 개 저장되어 있는 데이터 저장 장소이다.

 

- 배열 안에 들어있는 각각의 데이터들은 정수로 되어 있는 번호(첨자)에 의하여 접근한다.

 

- 배열을 이용하면 여러 개의 값을 하나의 이름으로 처리할 수 있다.

 

 

 

#배열 선언

 

자료형  배열이름  배열크기

int          Arr          [5]

 

 

 

 

- 자료형 : 배열 원소들이 int형이라는 것을 의미

 

- 배열 이름 : 배열을 사용할 때 사용하는 이름이 Arr이라는 것을 의미

 

- 배열 크기 : 배열 원소의 개수가 5개라는 것을 의미

 

- 인덱스(배열번호) : 항상 0부터 시작한다.

  5개의 크기를 가지지만 1 , 2 , 3 , 4 , 5의 숫자크기가 아니라 0 , 1 , 2 , 3 , 4로 크기를 가지고 있는것이다.

 

 

 

#배열 각방에 대입 해보기

 

 

 

 

 

 

 

 

#배열과 반복문

 

- 배열의 가장 큰 장점은 반복문을 사용하여 배열의 원소를 간편하게 처리할 수 있다는 점이다.

 

 

 

 

 

 

 

 

#잘못된 인덱스 문제

 

- 인덱스가 배열의 크기를 벗어나게 되면 프로그램에 치명적인 오류를 발생 시킨다.

 

- C에서는 프로그래머가 인덱스가 범위를 벗어나지 않았는지 반드시 확인해야 한다.

 

 

 

 

 

 

 

 

#배열의 초기화

 

- 배열의 크기가 주어지지 않으면 자동적으로 초기값의 개수만큼이 배열의 크기로 정해진다.

 

 

 

 

 

 

#배열의 복사와 비교

 

 

 

 

 

 

 

 

 

 

#2차원 배열

 

- 2차원 배열은 1차원적으로 구현된다.

 

 

 

 

 

 

 

 

#2차원 배열 활용

 

 

 

 

 

 

 

 

#2차원 배열의 초기화

 

 

 

 

 

 

 

 

#3차원 배열

 

 

 

 

 

 

 

 

#모듈의 개념

 

- 모듈(module) : 독립되어 있는 프로그램의 일부분

 

- 모듈러 프로그래밍 : 모듈 개념을 사용하는 프로그래밍 기법

 

- 모듈러 프로그래밍의 장점 : 각 모듈들을 독자적으로 개발 가능

                                      다른 모듈과 독립적으로 변경 가능

                                      유지 보수가 쉬워진다.

                                      모듈의 재사용이 가능하다.

 

- C에서는 모듈 == 함수이다.

 

 

 

 

#함수

 

- 표준함수,내장함수,시스템함수
- 사용자정의함수(사용자가 직접 만들어사용하는 함수)

 

 

#함수원형(prototype)
  - 함수의 생김새를 나타낸다.

 

 

 

#함수의 개념

 

- 함수(function) : 특정한 작업을 수행하는 독립적인 부분


- 함수 호출(function call) : 함수를 호출하여 사용하는 것

 

- 함수는 입력을 받으며 출력을 생성한다.

 

 

 

#함수의 장점

 

- 함수를 사용하면 코드가 중복되는 것을 막을 수 있다.

 

- 한번 작성된 함수는 여러번 재사용할 수 있다.

 

- 함수를 사용하면 전체 프로그램을 모듈로 나눌 수 있어서 개발 과정이

  쉬워지고 보다 체계적이 되면서 유지보수도 쉬워진다.

 

 

 

#함수들의 연결

 

- 프로그램은 여러 개의 함수들로 이루어진다.

 

- 함수 호출을 통하여 서로서로 연결된다.

 

- 제일 먼저 호출되는 함수는 main()함수이다.

 

 

 

#함수의 정의

 

- 반환형(return type)

 

- 함수 헤더(function header)

 

- 함수 몸체(function body)

 

 

 

#함수의 구조

 

 

 

 

 

 

 

 

#반환형

 

 

 

 

 

 

 

 

 

 

 

#매개 변수

 

 

 

 

 

 

 

 

#인수와 매개 변수

 

- 인수(argument) : 실인수 , 실매개 변수라고도 한다.

 

- 매개 변수(parameter) : 형식 인수 , 형식 매개 변수라고도 한다.

 

 

 

#함수 호출과 반환

 

- 함수호출(function call)

 

- 함수를 사용하기 위하여 함수의 이름을 적어주는 것

 

- 함수안의 문장들이 순차적으로 실행된다.

 

- 문장의 실행이 끝나면 호출한 위치로 되돌아간다.

 

- 결과값을 전달할 수 있다.

 

 

 

 

#함수 호출과정 살펴보기

 

 

 

 

 

 

 

 

#sum 함수 호출하기

 

 

 

 

 

 

 

 

#반환값

 

- 반환값(return value) : 호출된 함수가 호출한 곳으로 작업의 결과값을 전달하는 것

 

- 인수는 여러 개가 가능하나 반환값은 하나만 가능

 

 

반환값 함수이름 (매개변수)
  {
  //기능
       return ;
  }

 

 return
   - 리턴되는 값을 의미
   - 함수가 일을 하고 돌아올때 가지고 오는값

   - return문은 값을 반환하는 기능 외에도 함수를 종료하는 기등도 가지고 있다.

 

  return type(반환값)
   - 정수,실수,문자 데이터의 형태

 

  sum(전달인자)
   - 함수가 호출될때 넘겨지는 값의 형태

   - 아규먼트(argument)

 

  함수가 호출되서 넘겨질때 저장되는 공간
   파라미터 - 매개변수

 

 

 

 

 

 

 

 

 

#함수의 구분

 

 

 

 

 

 

 

 

 

#비교 함수

 

 

 

 

 

 

 

 

 

 

 

 

 

#절댓값을 구하는 함수 출력 프로그램

 

 

 

 

 

*반복문

 

- 반복문(Repetitive Statement)이란 지정한 작업을 반복해서 수행하는 문법이다.

 

- 반복문 작성 조건은 3가지가 있다.

 

1. 시작값 = 초기값; 1,2,100~

2. 조건

3. 증감식

 

- 반복문의 종류에는 while , do~while , for 등이 있다.

 

 

 

#while문

 

- 주어진 조건이 만족되는 동안 문장들을 반복 실행한다.

 

- 무한반복 while(1) 조건이 무조건 참이여야 한다.  ' 1 = 참 '

 

while(조건식)

문장;

 

 

 

#while문을 이용하여 1~10까지의 숫자 출력

 

 

 

 

 

 

 

#역순으로 출력

 

 

 

 

 

 

 

#while문을 이용하여 1~100까지의 합 , 홀수와 짝수의 합 출력해보기

 

 

 

 

 

 

 

 

 

#입력한 횟수만큼 이름 출력해보기

 

 

 

 

 

 

 

 

 

#while문 무한반복을 이용하여 가위 바위 보 게임 기본 메뉴 만들어보기

 

 

 

 

 

 

 

 

 

 

 

#do ~ while문

 

- 반복 조건을 루프의 끝에서 검사한다.

 

- 적어도 한번은 반복 문장을 실행한다.

 

 

do

문장

while(조건)

 

- while 조건이 참일 경우

 

while - 조건 -> 실행

do~while 실행 -> 조건

(부정문)

 

 

 

#do ~ while문을 이용하여 정수를 입력받고 입력받은 정수들을 더하다 0입력시 종료되는 프로그램 만들어보기

 

 

 

 

 

 

 

 

 

 

#while문 안에 if문 사용 예

 

- 정수를 입력받다가 8의 배수가 되는 수를 5번 출력하면 프로그램 종료

 

 

 

 

 

 

 

 

 

 

#for문

 

- for문의 기본 구조

 

for(초기식; 조건식; 증감식)

문장;

 

 

- 초기식: 반복을 시작하기 전에 딱한번 실행한다.


- 조건식: 매 반복의 시작앞서 실행, 결과를 기반으로 반복의 유뮤를 결정한다. (참일 때)


- 증감식: 매 반복실행 후 마지막 연산이 이뤄진다.

 

 

 

#for문을 이용해 이름 5번 출력해보기

 

 

 

 

 

 

 

 

 

 

#for문을 이용해 0~100까지 숫자의 합을 출력하는 프로그램 만들어보기

 

 

 

 

 

 

 

 

 

 

 

 

#for문을 이용하여 입력한 횟수까지의 곱을 출력해보기

 

 

 

 

 

 

 

 

 

 

#for문을 이용하여 'A' ~ 'Z'까지 출력해보기

 

 

 

 

 

 

 

#for문 무한루프

 

- for ( ; ; )

 

 

 

 

 

 

 

 

 

 

 

 

 

#중첩 for문

 

- for문안에 또 다른 for문이 있는 것

 

- 중첩for문을 이용하여 구구단 프로그램 만들어보기

 

 

 

 

 

 

 

 

 

 

 

#for문을 이용하여 별 삼각형 찍기

 

 

 

 

 

 

 

 

#역순으로 찍어보기

 

 

 

 

* 형변환

 

- 연산시에 데이터의 유형이 변환되는 것

 

 

#대입 연산시의 자동적인 형변환

 

 

 

 

#정수 연산시의 자동적인 형변환

 

- 정수 연산시 char형이나 short형의 경우 , 자동적으로 int형으로 변환하여 계산한다.

 

 

 

 

#명시적인 형변환

 

 

- 형변환(type cast) : 사용자가 데이터의 타입을 변경하는 것

  (자료형) 상수또는 변수

 

- (int) 1.23456

 

- (double) x // double형으로 변환

 

- (long) (x+y) // long형으로 변환 

 

 

 

 

 

#제어문

 

* 제어문이란 ?

 

- 프로그램의 실행흐름을 제어하는 문법이다.

 

- C언어에서는 문장을 좀 더 효과적으로 표현하기 위해서 두 가지 형태의 제어문을 제공한다

 

- 1. 조건문 2. 반복문

 

 

 

#조건문

 

- 예외 사항에 대처하기 위한 문법

 

- 특정 조건을 부여하고 해당 조건을 만족하면 지정한 문장을 수행하는 문법

 

- 조건은 수식으로 표현하며 수식의 진릿값이 참(1)이면 지정한 문장을 수행한다.

 

- if,switch문이 조건문에 해당한다.

 

 

#반복문

 

- 반복 행위를 효과적으로 표현하기 위한 문법

 

- 일정한 형태의 작업을 반복해서 수행해야 할 때 반복 조건을 부여하고 해당 조건이

  거짓이 될 때까지 지정한 문장을 계속 수행하는 문법

 

- for , while , do~while문이 반복문에 해당한다.

 

 

 

#if 조건문

 

- 조건이 참일 경우에만 실행한다.

 

 

    if(조건식)

       참인문장;

 

 

 

#일상 생활에서의 조건문의 예

 

- 만약 비가 오지 않으면 테니스를 친다.

 

 

- 만약 결석이 1/3 이상이면 F학점을 받는다.

 

- 만약 시간이 없는 경우에는 택시를 탄다.

 

- 만약 날씨가 좋고 공휴일이면 공원에 산책을 간다.

 

- 점수가 60점 이상이면 합격이고 그렇지 않으면 불합격이다.

 

 

 

 

#단일 문장을 수행하는 if문

 

 

 

 

 

 

#복합 문장을 수행하는 if문

 

- 중괄호를 사용하여 문장들을 그룹으로 묶는 것

 

- 블록(block)이라고도 한다.

 

- 단일문 대신 들어갈 수 있다.

 

 

 

 

 

 

 

#if문을 여러개 사용한 중첩 if문

 

 

 

 

 

 

 

 

 

#if ~ else ~ 조건문

 

if(조건식)

{

   참문장;

}

else

{

   거짓문장;

}

 

 

 

 

 

#if , else문을 이용한 짝수 홀수 출력 프로그램 만들어보기

 

 

 

 

 

 

 

 

#if ~ else문을 이용하여 자격증시험 합격 , 불합격 프로그램 만들어보기

 

 

 

 

 

 

 

 

#if ~ else if ~ else 문

 

if(조건식)

{

   참문장;

}

 

else if

{

   if문이 거짓이면 실행

}

else

{

   거짓문장;

}

 

 

 

 

 

 

 

 

 

#if문을 이용한 간단한 계산기 프로그램

 

 

 

 

 

 

 

 

 

 

#switch문

 

- 프로그래밍을 하다보면 정해진 상수와 조건 비교를 하는 경우가 많이 때문에 이런 경우 if ~ else if ~ else 조건문 보다

  switch 조건문이 더 효율적이다.

 

- 조건 수식을 포함한 모든 수식을 사용할 수 있으며 그 수식을 처리하여 얻은 결과 값을 각 case문에 잇는 상수 값과

  비교하여 명령문을 수행한다.

 

 

#switch문 만드는 형식

 

 switch (입력값) --> 정수,한 문자,연산의 결과값이 정수

   {

    case 나비:

       예쁘다. 날개 4개

   나비 탄생과정

case 블랙홀:

 

case 쓰레기:

   }

 

 

 

 

#switch문을 빠져나가는 break문

 

 

 

 

 

 

#switch문에서 주의할 점

 

- 변수는 사용할 수 없다.

 

- 변수가 들어간 수식은 사용할 수 없다.

 

- 실수는 사용할 수 없다.

 

- 문자열은 사용할 수 없다.

 

 

 

#switch문을 사용하여 두수의 차,합 출력 프로그램 만들어보기

 

 

 

 

 

 

#switch문을 이용하여 아침,점심,저녁 확인 프로그램 만들어보기

 

 

 

 

 

 

 

 

#switch문으로 1~5까지의 숫자에 속한지 아닌지 알아보기

 

 

 

 

 

 

 

#논리 연산자를 이용한 방법

 

 

 

 

 

'C언어 > C언어' 카테고리의 다른 글

C언어 [배열,함수]  (0) 2017.10.28
C언어 [반복문 while , do~while , for]  (0) 2017.10.24
C언어 [자료형,scanf]  (0) 2017.10.19
C언어 [변수와 상수,연산자]  (0) 2017.10.18
C언어 [특수,서식문자,아스키 코드]  (0) 2017.10.15

+ Recent posts