C언어 프로그래밍, 입력, 출력 

1. 입력(Input)

 

C언어에서 사용자의 입력을 받는 함수는 scanf()이다.

함수 사용 방식은 ‘scanf("입력형식", 입력받을장소(공간, 변수))’처럼 사용한다.

입력 받을 장소는 ‘&’기호를 변수명 앞에 사용해 변수(공간)의 주소 값을 가져온다. scanf()를 사용한다는 것은 화면에서 입력한 내용을 특정 변수의 주소값에 저장한다는 것이다.

 

2. 출력(Output)

 

C언어에서 출력 기능을 가진 함수는 printf() 함수이다. 더 자세히 말해 printf는 형식 지정이 있는 출력을 한다. 여기서 형식 지정이란, 출력에 할 때 자료형에 맞는 형태로 문자를 사용해야 한다는 것이다. 이를 형식지정 문자라 한다.

 

서식문자

기능

%c

정수 값을 ‘문자’로 출력(문자 1개)

%d

정수 값을 10진수로 출력(부호 있음)

%o

정수 값을 8진수로 출력

%x , %X

정수 값을 16진수로 출력

%f

실수 값(소수) 출력

%s

문자열 출력

%p

16진수로 메모리 주소 출력

 

그리고 print에서 많이 사용되는 이스케이프 문자가 있다. 이것은 문자열 안에서 특수한 기능들을 하는 문자들이다.

 

이스케이프 문자

기능

\n

개행(새로운 줄)

\t

탭(tab) - 들여쓰기

\\

\를 문자로 사용

\‘

작은따옴표(‘)를 문자로 사용

\“

큰 따옴표(“)를 문자로 사용

 

예제

#include <stdio.h>

void main()
{	
	int a;
	int b;
	printf("두 수의 입력: ");
	scanf("%d %d", &a, &b);

	printf("a + b = %d\n", a + b);
	printf("a - b = %d\n", a - b);
	printf("a * b = %d\n", a * b);
	printf("a / b = %d\n", a / b);
	printf("a %% b = %d\n", a % b);
}
#incldue <stdio.h>

void main()
{
	int iNum = 0;
    
	printf("숫자 입력 : "); 
	scanf("%d", &iNum); 
    
	printf("입력한 숫자는 %d입니다.\n, iNum");
}

 

결과

두 수 입력 : 20 6
20 + 6 = 26
20 - 6 = 14
20 * 6 = 120
20 / 6 = 3
20 % 6 = 2
숫자 입력 : 5
입력한 숫자는 5입니다.

반응형

 C언어 프로그래밍 기초 

1. 주석(Comment)

 

주석의 사전적인 의미는 낱말이나 문장의 뜻을 쉽게 풀이한 것 또는 그런 글을 말한다.
C언어에서 주석은 짜놓은 코드를 설명하거나 표시를 할 때 사용하는 것이다. 주석은 컴파일러가 소스를 읽을 때 무시하는 문장이 된다.

주석을 사용하는 방법은 2가지가 있다.

- 한 줄짜리 주석 : 슬러시(/) 기호를 2번 사용한다.
- 여러 줄 주석 : /* 내용 */ 같이 사용하면 된다.

 

2. 자료형(Data Type)

 

실수치, 정수, 불린 자료형 따위의 여러 종류의 데이터를 식별하는 분류로서, 더 나아가 해당 자료형에 대한 가능한 값, 해당 자료형에서 수행을 마칠 수 있는 명령들, 데이터의 의미, 해당 자료형의 값을 저장하는 방식을 결정한다. 쉽게 말해 자료형이란 변수의 종류를 의미한다. 변수에 값을 담기 이전에 정수, 실수, 문자, 문자열 등 어떤 값들을 지닐 수 있는지 자료형을 미리 정해주어야 한다. 

C언어에서의 기본 자료형의 종류는 다음과 같다.

 

 

종 류

크 기

값의 표현범위

정수형

char

1byte

-128~ +127

short

2byte

-32,768~+32.767

int

4byte

-2,147,483,648~

+2,147,483,647

long

4byte

-2,147,483,648~

+2,147,483,647

long long

8byte

900경 이상

실수형

float

4byte

소수점 이하 6자리까지 정확도 보장

double

8byte

소수점 이하 15자리까지

long double

8byte

소수점 이하 19자리까지

 

정수형에는 부호가 있는 경우와 부호가 없는 경우로 나눌 수 있다. 먼저, 부호가 있는 변수를 만들 때 signed를 사용한다. 이것은 기본 형식이므로 따로 사용할 필요가 없다. 다음, 부호가 없는 정수형을 만들고 싶을 땐 unsigned를 선언 시에 사용해주면 된다. 

그럼 0부터 양수를 사용하게 되고 값의 표현범위도 양수 범위의 2배정도로 늘어난다. 예를 들어 int일 경우 값의 표현범위가 0 ~ 42억이 되는 것이다. 참고로 int와 double은 C언어에서 기본적으로 사용되는 정수와 실수 자료형이다.

 

3. 변수(Variable)

 

변수는 하나의 값을 저장할 수 있는 메모리 공간이다. 여기서 메모리 공간은 프로그램이 실행되는 동안 사용하는 공간(RAM)이다. 쉽게 말해 변수를 무엇인가를 담을 수 있는 상자이다.

변수를 만드는 방법(변수 선언)에는 크게 2가지가 있다.

① 자료형 변수명 = 초기값;

② 자료형 변수명;

첫 번째 방식은 변수 선언과 동시에 초기값을 지정하는 형태다. 두 번째 형태는 초기값 지정 없이 변수만을 선언하는 형태다. 참고로 C언어에서는 모든 문장의 끝에 ‘세미콜론(;)’을 사용한다.
변수 선언 시, 변수명을 정할 때 몇 가지 규칙이 존재한다. 변수명을 정할 때는 이 규칙들을 주의해서 사용해야 한다.


① 영문자, 숫자, 언더 바(_) 만 가능(한글이 가능하나 사용하지 않음)
   변수명 중간에 공백이 있어도 안 된다. (공백도 특수문자이기 때문이다.)


② 첫 글자는 반드시 영문이어야 한다. 그리고 대소문자 구분을 확실하게 해야 한다.
   프로그래밍 언어에서는 무조건 대소문자가 구분된다. (같은 명이라도 대소문자에 따라 
   다른 변수라고 인식한다.)


③ 예약어 사용이 불가능하다. 예약어란 C언어 내부에서 이미 정해진 함수와 같은 경우를 
   말하며 이와 같은 이름으로 변수명을 설정하면 오류가 나게 된다.


④ 변수명에 의미를 부여해 이름만 봐도 어떤 것을 나타내는지 알 수 있도록 정하는 것이 
   좋다. 예를 들어, 점수를 의미하는 변수를 만들시 Score1, score2 같이 만든다.

 

 

 

예제

 

#include<stdio.h>

void main() {
	char cValue = 'A'; // 변수명 cValue에 문자 'A'대입
	int iValue = 65; // 변수명 iValue에 정수 65대입

	printf("cValue 문자: %c\n", cValue); 
	printf("cValue 정수: %d\n", cValue);

	printf("iValue 문자: %c\n", iValue);
	printf("iValue 정수: %d\n", iValue);
    }

 

반응형

+ Recent posts