본문 바로가기

C언어

C언어 1 (출력 / 변수 / 할당 / 입력 / 함수 / 연산)

#include <cstdio> 

: 전처리를 의미, 표준 입출력 (콘솔 입출력)을 사용하겠다 선언 하는 것

 

int main (){...} : 프로그램의 최초 진입점, 시작을 알리는 함수

 

printf("..."); : 큰 따옴표 안의 내용을 콘솔로 출력

 

줄바꿈 문자 "\n"

 

변수 (variable)

: 기본형 데이터를 저장하는 저장 공간, 변수를 만드는 것을 '변수 선언' 이나 '정의' 라고 함

 

• 이름 짓기 규칙

#1 알파벳이나 언더바[_]로 시작

#2 두번째 문자부터는 숫자가 나올 수 있다.

#3 키워드로 하지않는다.

 

• 이름의 특징

#1 변수명은 유니크 해야한다, 같은 변수명 사용 X

#2 대소문자 구분

 

• 값의 할당 (Assignment )

: 변수에 값을 넣는 것을 할당, 값을 넣을 떄는 이콜 기호(=)를 활용,

값을 연산해서 할당 가능 (변수 이름을 활용해서 연산에 이용 가능)

 

printf("%d", value); 

: value 라는 곳에 저장된 값을 %d가 값을 불러와 값을 치환해줌

 

주석 (Comment)

: 프로그래머가 자신의 코드에 설명문을 달아놓는 것, 한줄 주석 (//) 과 여러줄 주석 (/**/)이 있다.

 

사칙 연산 기호

+ : 덧셈

- : 뺄셈

* : 곱셈

/ : 나눗셈

% : 나머지

 

연산자의 종류

• 이항연산자 : 피연산자가 2개, 연산자 앞 뒤로 값이 있다. (a+b, a/b)

• 단항연산자 : 피연산자가 1개, 연산자의 앞이나 뒤에 값이 하나만 있다. (a++ : a의 값이 1이 증가해서 다시 a로 들어감)

 

scanf(...) : 사용자 입력

표준 입력, 즉 콘솔로 부터 입력을 받아서 그 값을 변수에 집어넣게 해주는 함수

** 입력을 받고자하는 변수 앞에 &(앰퍼센트)를 꼭 붙여주기

** scanf 사용시 유의 사항

fseek (stdin, 0, SEEK_END);

: scanf 두 번 이상 사용시 이 구문은 scanf를 사용하기전 호출 해줘야함, 입력값이 잘못 들어오는 것을 방지

 

함수

•  입력을 받아 어떤 값을 만들어내는 동작을 하는 구문

(사용자로 부터 X 프로그램 내부에서 파라미터로 받는 입력)

•  함수는 만들어낸 값을 return 구문으로 반환, 반환된 값은 = 을 통해 변수의 값으로 다시 지정 가능

•  반복되는 코드를 획기적으로 줄일 수 있는 방법

 

ex)

int inputFunction(){

    return 0;

}

 

진입점 함수 int main() {...}

모든 c/c++ 함수는 이 main 함수가 있어야하고, main 함수가 최초로 실행되는 함수

 

ex) 세 번 값을 입력 받는 프로그램

#include <cstdio>

 

int inputFunction (){

    int input;

    printf("입력하세요 : ");

    scanf("%d", &input);

    printf("입력된 값 : %d /n", input);

    return 0;

}

int main (){

    inputFunction();

    inputFunction();

    inputFunction();  // 함수를 세 번 호출

    return 0;

}

 

ex)

int myValue (){

    return 100; //100을 리턴하여 함수 myValue에 저장

}

int main () {

    int value = myValue(); // 함수 호출

    printf("%d", value);

    return 0;

}

 

파라미터 (parameter)

: 함수로 입력되는 값, 파라미터는 함수 내부에서 변수 처럼 동작

 

ex)

int myValue (int a, int b){

    return a+b;

}

int main () {

    int value = myValue (100, 200);

    printf ("%d", value);

    return 0;

}