컴퓨터/C
지금까지 C언어에서 변수와 상수를 사용하는 방법에 대하여 공부했습니다. 이제 프로그램 위에 변수와 상수를 올려놓고 다양한 계산을 하는 방법을 알아보도록 하겠습니다. 바로 연산자를 통해서 변수들에 들어있는 값을 제어할 수 있습니다.
프로그래밍에서 연산을 한다는 의미는 수학과 같은 사칙연산도 존재하지만 그 외에 다양한 연산이 존재합니다. 이런 다양한 연산자들을 통해 프로그램 안에 있는 데이터를 제어할 수 있어야 됩니다.
다양한 연산 | 연산 형식 |
대입 연산 | = |
산술 연산 | +, -, *, /, ++, -- |
관계 연산 | <, >, <=, >=, ==, != |
논리 연산 | &&, ||, ! |
할당 연산 | +=, -=, *=, /=, %= |
삼항 연산 | ? |
비트 연산 | <<, >>, &.. |
주소 연산 | *..... |
본문에서는 기초 연산자들에 대하여 서술하도록 하겠습니다.
대입 연산자는 '='를 사용합니다.
좌항의 값에 우항의 값을 대입시키는 것입니다.
int a ;
a = 10; // a에 10을 대입시킨다 : a는 10이다.
산수와 유사합니다. 조금 생소한 연산이 있을것 같아 정리해 보도록 하겠습니다.
%,--,++은 조금 프로그래밍을 처음 접하는 사람에게는 생소한 연산자 일 것입니다. 소스코드를 통해 무엇인지 알아보도록 하겠습니다.
#include <stdio.h>
int main()
{
int a,b;
a = 1;
b = 2;
printf("더하기 연산 : %d\n", a + b);
printf("빼 기 연산 : %d\n", a - b);
printf("곱하기 연산 : %d\n", a * b);
printf("나누기 연산 : %d\n", a / b);
printf("나머지 연산 : %d\n", a % b);
printf("단항 더하기 연산 : %d\n", a++);
printf("단항 더하기 연산 : %d\n", ++a);
printf("단항 빼 기 연산 : %d\n", b--);
printf("단항 빼 기 연산 : %d\n", --b);
}
어떤 결과가 나올지 예상을 한번 해보고 직접 따라해 보세요.
결과 보기
이제 소스코드를 다시 한번 해석해 보도록 하겠습니다.
관계연산자는 좌항과 우항에 대해 산술적인 비교 연산을 하여 결과를 맞으면 1 맞지 않으면 0을 출력합니다.
소스코드를 통해 실습을 해보겠습니다.
#include <stdio.h>
int main()
{
int a,b;
a = 1;
b = 2;
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);
printf("a != b : %d\n", a != b);
}
결과보기
논리 연산은 정해진 진리에 의해 결과를 출력합니다.
소스코드를 통해 실습해보겠습니다.
#include <stdio.h>
int main()
{
printf("1 && 1 : %d\n", 1 && 1);
printf("1 && 0 : %d\n", 1 && 0);
printf("1 || 1 : %d\n", 1 || 1);
printf("1 || 0 : %d\n", 1 || 0);
printf(" !1 : %d\n", !1);
}
결과 보기
비교 연산과 논리 연산은 프로그램의 흐름을 제어하는데 필수적인 요소중 하나입니다.
할당 연산은 대입 연산자와 산술 연산자를 합친 연산자입니다. 이 연산자를 사용하지 않아도 프로그래밍을 하는데 문제는 없지만, 조금 더 적은 타이핑을 가능하게 합니다.
소스코드를 통해 차이점을 알아보겠습니다.
#include <stdio.h>
int main()
{
int a = 10;
int b = 10;
a = a + 10;
printf("a = a + 10의 결과 : %d\n", a);
b += 10;
printf("b +=10의 결과 : %d\n", b);
}
결과 보기
a에 10의 값을 넣고 다시 a는 a 더하기 10 결과는 20이라는 의미와
b에 10의 값을 넣고 b +=10은 b에 10을 더해라 결과는 20
의미는 같지만 소스코드를 좀 더 효율적으로 쓸 수 있게 됩니다.
삼항연산, 비트연산, 주소연산등이 있습니다. 이 3가지 연산들은 추후 다른 부분과 함께 말씀드리도록 하겠습니다.
연산자를 지금 다 알고 활용을 하기에도 쉽지 않기 때문에, 같이 쓰는 개념을 배울때 동반해 배우면 더 기억에 남을 것 입니다.
C 언어 - 표준 출력 (0) | 2021.05.25 |
---|---|
C 언어 - 주석(Comment) (0) | 2021.05.24 |
C 언어 - 문자의 자료형 (0) | 2021.05.23 |
C언어 변수의 선언과 자료형 (0) | 2021.05.22 |
C 언어 - 상수와 변수 (0) | 2021.05.21 |
91년생 공학엔지니어의 개발일지
TODAY :
YESTER DAY :
TOTAL :
Commnet