2023. 7. 9. 12:22ㆍlanguage : p_study/c language
7월 1주차 학습 할 C언어 study 목차는 다음과 같다.
1. 변수와 자료형
2. 수식자와 연산자
3. 조건문
4. 반복문
지난 단원과 이번단원은 암기와 약간의 활용만 할 수 있다면 어려움없이 공부할 수 있다고 생각한다.
내가 배운 개념이 어떻게 사용되는지를 이해하고 외워둔다면 그걸로 될 듯.
2. 수식자와 연산자
수식이란 피연산자들과 연산자의 조합이라고 할 수 있다.
연산자는 연산을 나타내는 기호이다.
종류를 알아보자.
연산자의 분류 | 연산자 | 의미 |
대입 | = | 오른쪽을 왼쪽에 대입 |
산술 | + - * / % | 사친연산과 나머지 연산 |
부호 | + - | 양수와 음수 표시 |
증감 | ++ -- | 증가, 감소연산 |
관계 | > < == != >= <= | 오른쪽과 왼쪽을 비교 |
논리 | && || ! | 논리적인 AND, OR |
조건 | ? | 조건에 따라 선택 |
콤마 | , | 피연산자들을 순차적으로 실행 |
비트 단위 연산자 | & | ^ ~ << >> | 비트별AND,OR,XOR,이동,반전 |
sizeof 연산자 | sizeof | 자료형이나 변수의 크기를 바이트 단위로 반환 |
형변환 | (type) | 변수나 상수의 자료형을 변환 |
포인터 연산자 | * & [] | 주소계산, 포인터가 가리키는 곳의 내용 추출 |
구조체 연산자 | . -> | 구조체의 멤버참조 |
피연산자 연산자 피연산자 = 식의 값
피연산자의 수에 따라서 단항, 이항, 삼항 연산자로 나뉘어진다.
산술 연산자란 기본적인 산술 연산인 덧셈, 뺄셈, 곱셈, 나눗셈, 나머지 연산을 실행하는 연산자이다.
연산자 | 기호 | 사용 예시 | 결과값 |
덧셈 | + | 7+4 | 11 |
뺄셈 | - | 7-4 | 3 |
곱셈 | * | 7*4 | 28 |
나눗셈 | / | 7/4 | 1 |
나머지 | % | 7%4 | 3 |
➡정수와 정수끼리의 나눗셈
7 / 4 = 1
➡실수와 실수끼리의 나눗셈
7 . 0 / 4 . 0 = 1 . 75
✔ 증감 연산자
증감 연산자는 ++기호나 --기호를 사용하여 변수의 값을 1만큼 증가시키거나 감소시키는 연산자이다.
✅증감연산자
x ++
x = x + 1 ;
✅감소연산자
x --
x = x - 1;
증감 연산자의 종류를 알아보자.
증감 연산자 | 차이점 |
++x | 수식의 값은 증가된 x값이다. |
x++ | 수식의 값은 증가되지 않은 원래의 x값이다. |
--x | 수식의 값은 감소된 x값이다. |
x-- | 수식의 값은 감소되지 않은 원래의 x값이다. |
x = 1;
y = 1;
num1 = ++ x ; // x의 값이 증가된 후에 사용됨, num1값은 2가된다.
num 2= ++ y ; // y의 값이 증가된 후에 사용됨, num2값은 2가된다.
✔ 아래와 같이 출력되도록 자동판매기 프로그램을 만들어보자.
투입한 돈 : 1000
물건값 : 270
거스름돈 : 730
100원 동전의 개수 : 7 개
10원 동전의 개수 : 3 개
✔ 대입 연산자
대입 연산자는 변수에 값을 저장하기 위하여 사용하는 연산자이다.
대입 연산자는 할당 연산자, 배정 연산자라고도 한다.
보통의 = 과는 다르게 c언어에서는 오른쪽에 있는 수식의 값을 계산한 후 왼쪽의 변수에 저장한다고 생각하면 된다.
변수 = 수식
x = 10
✔ 복합 대입 연산자
복합 대입 연산자란 += 처럼 대입 연산자 =와 산술 연산자를 합쳐 놓은 연산자이다.
복합 대입 연산자에 대해 알아보자.
복합 대입 연산자 | 의미 |
x+=y | x=x+y |
x-=y | x=x-y |
x*=y | x=x*y |
x/=y | x=x/y |
x%=y | x=x%y |
✔ 관계 연산자
연산 | 의미 |
x == y | x와 y가 같은가? |
x != y | x와 y가 다른가? |
x > y | x가 y보다 큰가? |
x < y | x가 y보다 작은가? |
x >= y | x가 y보다 크거나 같은가? |
x <= y | x가 y보다 작거나 같은가? |
✔ 비트 연산자
비트 연산자는 AND연산이나 OR연산을 하는 연산자이다.
비트 연산자 종류는 다음과 같다.
연산자 | 연산자의 의미 | 설명 |
& | 비트 AND | 두 개의 피연산자의 해당 비트가 모두 1이면 1, 아니면 0 |
| | 비트 OR | 두 개의 피연산자의 해당 비트중 하나만 1이면 1, 아니면 0 |
^ | 비트 XOR | 두 개의 피연산자의 해당 비트의 값이 같으면 0, 아니면 1 |
<< | 왼쪽으로 이동 | 지정된 개수만큼 모든 비트를 왼쪽으로 이동한다. |
<< | 오른쪽으로 이동 | 지정된 개수만큼 모든 비트를 오른쪽으로 이동한다. |
~ | 비트 NOT | 0은 1로 만들고 1은 0로 만든다. |
비트연산자는 추가 공부 자료를 더 넣어보겠다.
✔ 비트 이동 연산자 ( << ,>> )
비트 이동 연산자는 비트들을 왼쪽으로 한번 이동할 때마다 값은 두배가 된다.
비트 이동 연산자의 종류에 대해 알아보자.
연산자 | 기호 | 설명 |
왼쪽 비트 이동 | << | x << y x의 비트들을 y칸만큼 왼쪽으로 이동 |
오른쪽 비트 이동 | >> | x >> y x의 비트들을 y칸만큼 오른쪽으로 이동 |
✔ 연산자의 우선순위
✔ 형변환
- 형변환(type casting)이란 데이터의 타입을 변환시키는 처리과정이다.
- 예를들어 int 형을 double형으로 변환할 수 있다.
- 형변환은 자동적인 형변환과 명시적인 형변환 두가지가 있다.
☑ 자동적인 형변환
☑ 명시적인 형변환
형식 : (자료형) 수식
(int) 1.23456 //상수
(double) x //변수
(long)(x+1) //수식
✅ mini project
“사용자로부터 2개의 정수를 입력받아서 첫 번째 정수를 두 번째 정수로 나누었을
때의 몫과 나머지를 계산하는 프로그램을 작성하라.”
예시)
첫 번째 정수를 입력하시오
: 10
두 번째 정수를 입력하시오
: 3
몫은 3이고 나머지는 1입니다.
코드
문제 풀이)
- int를 통해 정수형 변수를 입력받을 정수 2개와 몫과 나머지 결과를 받을 2개의 변수를 각각 선언해준다.
- printf를 통해 정수를 입력받는 부분을 명시하고, scanf로 입력받는다.
- result1,2를 통해 몫과 나머지를 대입연산하여 결과값을 받는다.
- printf를 통해 몫과 나머지를 나타낸다.
콘솔창
사실 공부하면서 책에 있는 내용을 쭉 훑어보고 추가로 공부할 내용이 있다면 추가해서 넣으려고 했는데 이번 단원까지는 사실상 간단한 개념들과 활용을 준비하는 단계라 추가할 내용이 있지는 않을 것 같다.
'language : p_study > c language' 카테고리의 다른 글
7월 2주차_C Study 계획서 (0) | 2023.07.10 |
---|---|
7월 1주차_C Study 계획서 (0) | 2023.07.10 |
7월 1주차_C Study 4. 반복문 (0) | 2023.07.09 |
7월 1주차_C Study 3. 조건문 (0) | 2023.07.09 |
7월 1주차_C Study 1 . 변수와 자료형 (0) | 2023.07.04 |