첫 강의 올립니다!

입력문과 출력문이 워낙 쉽고, 관련된 강의가 많이 있긴 하지만 그래도! 저는 한번 강의를 시리즈로 올려 보고 싶었기 때문에 입력문과 출력문 강의부터 올리도록 하겠습니다.

 

• 입력문

입력문은 사용자가 정한 값이나 문자 등을 컴퓨터가 말 그대로 입력받는 것입니다. 

C언어에서 쓰는 입력문에는 대표적으로 scanf가 있는데요, 지금부터 설명해 드리겠습니다.

예를 보여 드리자면,

#include <stdio.h>

int main()

{

       int a;

       scanf("%d", &a);

}

이렇게 코드를 짤 수 있습니다. (이 코드는 사실상 아무것도 하지 않습니다. 출력되는 값이 없고, 컴퓨터가 입력만 받아 놓기 때문이죠.)

--> 여기서 주의할 점은! 

a 앞에 & 기호를 붙이는 것입니다!! (& 기호를 붙이지 않으면 컴파일 에러가 나니 주의하세요.)

 

• &, 변수에 관한 자세한 설명

여기서 &기호는 변수의 주소를 알려주는 역할을 합니다. 

제가 위 코드에서 만든 'a' 를 코딩에서는 변수 라고 합니다. 변수는 사용자가 지정할 수 있는 값으로, 수학에서의 미지수와 비슷합니다.

변수에 원하는 값을 저장하고, 마음대로 사용할 수 있죠.

변수는 모두 주소를 가지고 저장이 되는데요, 만약 변수들이 이렇게 저장이 되어 있고, a의 값이 13 이었다면

주소      값

0000       9

0001       10

0002       11

0003       12

0004       13

&a의 주소는 '0004'가 되는 것입니다.

scanf 가 이렇게 변수의 주소를 받는 이유는 scanf 에 add 라는 변수를 주었다면, scanf 는 add를 그대로 쓰지 않고, 다른 변수를 선언해 그 변수를

add 변수에 대입하기 때문입니다. 

 

• 출력문

다음으로는 출력문에 대하여 알아보겠습니다. 

출력문은 컴퓨터가 입력된 값을 그대로 출력하는 것입니다.

출력문에는 대표적으로 printf 가 있습니다.

소스 코드를 보자면 다음과 같습니다.

#include <stdio.h>

int main()

{

       int a;

       scanf("%d",&a);

       printf("%d\n",a);

}

--> printf 에는 &기호가 필요가 없습니다.

--> 이 코드는 사용자가 어떤 값을 입력하고, 그 값을 그대로 출력하는 프로그램 입니다.

--> 여기서 \n은 한 줄의 띄운다, 즉 엔터의 뜻을 가지고 있습니다. 이 \n을 생략하는 방법이 있는데요, 그 방법을 다음 강의 주제로 하도록 하겠습니다.

 

• 구분자

마지막으로 설명해 드릴 내용은 구분자 인데요, 두개 이상의 변수를 입력받을 때

(예를 들어 이럴 때) (#include <stdio.h>는 생략)

int price1, price2;

printf("가격을 두 개 입력하세요: ");

scanf("%d %d", &price1, &price2);

printf("%d원과 %d원의 합은 %d원입니다.\n", price1, price2, price1 + price2);

 

--> scanf 에서 price1과 price2 사이에 공백을 넣어 구분한 것을 볼 수 있는데, 이것을 구분자라고 합니다.

 

• 예제

코드업 1001번을 예제로 살펴볼 텐데요, 잎에서 배운 printf 를 활용하면 아주 쉽게 풀 수 있습니다.

완전히 풀어드리지는 않고, 주석만 달아드리도록 하겠습니다.

<예제 풀이>

#include <stdio.h>

int main()

{

        // printf("") 문을 사용해 주어진 문장을 출력

       return 0;

}

--> 여기서 return 0; 은 코드를 중단시키는 것인데, 꼭 필요하지는 않으나 대회 등에서는 꼭 적어 주어야 합니다.

 

• 강의요약

출력문에는 printf 이, 입력문에는 scanf 가 있다.

 

강의 읽어 주셔서 감사합니다.

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

산술 연산자  (0) 2020.02.01
아스키 코드표  (0) 2020.02.01
변수의 저장 범위  (0) 2020.02.01
입력문과 출력문(2)  (0) 2020.01.30
CodeupCoder's blog에 오신것을 환영합니다!!  (2) 2020.01.30

+ Recent posts