1. ++연산자
연산자(operator) : 연산 작업을 처리하기 위해 사용하는 기호
산술연산자 : +,-,*,/,%와 같이 수학 연산에 사용하는 기호
실행결과 |
b는 21 b는 21 b는 22 |
++연산자 : 값을 1씩 증가시킨다.
- 전위 (++b) : 먼저 1 증가 연산을 한 후 출력
- 후위(b++) : 먼저 출력을 한 후, 다음 줄로 넘어가기 전에 1 증가 연산
산술 연산자 | + | 왼쪽에 있는 값과 오른쪽에 있는 값 더하기 |
- | 왼쪽에 있는 값에서 오른쪽에 있는 값 빼기 | |
* | 왼쪽에 있는 값과 오른쪽에 있는 값 곱하기 | |
/ | 왼쪽에 있는 값을 오른쪽에 있는 값으로 나누기 | |
% | 왼쪽에 있는 값을 오른쪽에 있는 값으로 나눈 나머지 |
대입 연산자 | = | 오른쪽에 있는 값을 왼쪽에 대입 |
+= | 왼쪽에 있는 값과 오른쪽에 있는 값을 더한 뒤 왼쪽에 대입 | |
-= | 왼쪽에 있는 값에서 오른쪽에 있는 값을 뺀 뒤 왼쪽에 대입 | |
*= | 왼쪽에 있는 값과 오른쪽에 있는 값을 곱한 뒤 왼쪽에 대입 | |
/= | 왼쪽에 있는 값을 오른쪽에 있는 값으로 나눈 뒤 왼쪽에 대입 | |
%= | 왼쪽에 있는 값을 오른쪽에 있는 값으로 나눈 나머지를 왼쪽에 대입 |
증감 연산자 | ++a | a의 값 1 증가 후 연산 진행 |
a++ | 연산한 후 a의 값 1증가 | |
--a | a의 값 1 감소 후 연산 진행 | |
a-- | 연산한 후 a의 값 1 감소 |
비교 연산자 (관계 연산자) |
< | 왼쪽에 있는 값이 오른쪽에 있는 값보다 작은가? |
> | 왼쪽에 있는 값이 오른쪽에 있는 값보다 큰가? | |
<= | 왼쪽에 있는 값이 오른쪽에 있는 값보다 작거나 같은가? | |
>= | 왼쪽에 있는 값이 오른쪽에 있는 값보다 크거나 같은가? | |
== | 왼쪽에 있는 값과 오른쪽에 있는 값이 같은가? | |
!= | 왼쪽에 있는 값과 오른쪽에 있는 값이 다른가? |
논리 연산자 | && | 왼쪽 피연산자와 오른쪽 피연산자가 모두 참이면 참, 하나라도 거짓이면 거짓 |
|| | 왼쪽 피연산자 또는 오른쪽 피연산자 중 하나라도 참이면 참, 모두 거짓이면 거짓 | |
! | 피연산자가 참이면 거짓, 거짓이면 참 |
2. for 문
실행결과 |
Hello World 1 Hello World 2 Hello World 3 . . . Hello World 10 |
3. while 문
실행결과 |
Hello World 1 Hello World 2 Hello World 3 . . . Hello World 10 |
4. do-while 문
실행결과 |
Hello World 1 Hello World 2 Hello World 3 . . . Hello World 10 |
while 문은 조건을 먼저 확인하고 나서 참이면 문장을 수행하지만 (조건에 따라 문장을 아예 실행하지 않을 수도 있다.)
do-while 문은 일단 무조건 한 번은 실행하고 난 뒤에 조건을 확인한다는 점이 다르다.
while (1)
무한 반복(infinite loop)에 빠졌다
즉, 반복문을 탈출하지 못하고 문장이 끝없이 반복 수행하는 것
C언어에서는 0을 거짓 / 0이 아닌 수를 참으로 인식하여 일반적으로 코드에서 참을 표현하기 위해 1을 사용한다.
탈출 조건을제대로 설정하지 않아서 무한 반복에 빠지는 경우가 많은데 Ctrl+C 를 누르면 실행을 강제로 종료할 수 있다.
5. 이중 반복문 (중첩 반복문)
for 문 안에 for 문을 겹치게 작성하는 것
실습1 : 구구단 출력하기
실습2 : 별표 출력하기
1. 별표가 각 줄마다 하나씩 늘어나야 하므로 두번째 for문의 조건을 j <= i 로 작성
2. 반복이 1번 끝나면 줄바꿈(\n) 해야하므로 조건이 안맞을시 탈출하여 printf("\n") 수행
실습3 : 오른쪽 정렬로 별표 출력하기
반복문에서 초깃값을 0부터 시작하는 이유
변수는 하나의 값만 저장할 수 있다.
그런데 배열(array)을 이용하면 여러 값을 한 번에 관리할 수 있다.
배열은 여러 값이 연속된 공간에 순서대로 존재하고 각 값은 인덱스(index)를 통해 접근할 수 있다.
그리고 배열의 인덱스는 0부터 시작한다.
for문으로 배열의 모든 값에 접근하려면 i를 0부터 시작해 1씩 증가하도록 해야 한다.
프로젝트
셀프체크
for (int j = i; j > 0; j--) 부분을
for (int j = 0; j < i; j++) 으로 대체하여도 같은 결과 나온다.
'Programming Language > C' 카테고리의 다른 글
[나도코딩] 6장.여러 데이터 한번에 저장하기 : 배열과 문자열 (0) | 2023.03.14 |
---|---|
[나도코딩] 5장.같은 일 한곳에서 처리하기 : 함수 (0) | 2023.03.13 |
[나도코딩] 4장.조건에 따라 다른 일하기 : 조건문 (0) | 2023.03.10 |
[나도코딩] 2장.프로그래밍의 기초 : 변수와 상수, 입력과 출력 (0) | 2023.03.08 |
[나도코딩] 1장.Hello, C ! (0) | 2023.03.08 |