이번시간에는 for문에 대해서 배워보려고 합니다.
for문은 반복문으로 반복할 때 사용됩니다.
반복문에는 for문, while문, do while문이 있습니다. for문은 그중 하나로 개인적으로도 가장 많이 쓰고, 대부분의 사람들이 굉장히 많이 쓰는 반복문입니다.
그래서 for문을 제일 먼저 설명하겠습니다.
for문은 초기문, 조건식, 반복 후 작업에 관련된 식이 소괄호 안에 들어가고, 그 밑에 작업문이 있습니다.
이렇게 말해서는 무슨 말인지 이해가 안 될 수도 있습니다.
for(초기값,조건식, 반복 후 작업){
작업문; }
요런 식으로 구성되어 있습니다.
초기값에 들어가는 것은 지역변수로 for문이 끝나면 메모리가 반환되게 됩니다.
초기값뿐만 아니라 작업문에서도 변수가 선언된다면 for문 안의 지역변수로 활용되는 것이기 때문에 끝나면 메모리가 반환되게 됩니다.
for(int i=0;i<3;i++){
int num=3;}
cout<<num;
이렇게 쓰면 에러가 납니다. num이 지역변수이기 때문에 for문 바깥에서 for문 안에서 선언된 num을 가져와 쓸 수가 없습니다.
그리고 if문과 마찬가지로 반복문이 한 줄이면 중괄호는 생략이 가능합니다.
이런 for문은 중첩해서 쓸 수도 있습니다. 중첩하는 이유는 별찍기 문제같이 다음줄로 넘어갈 때 쓰기도 하고, 이차원 배열에서 행과 열을 각각 컨트롤하기 위해 쓰기도 합니다.
#include<iostream>
using namespace std;
int main() {
int num = 0;
for (int i = 0;i < 3;i++) {
for (int j = 0;j < 3;j++) {
num++;
}
}
cout << num;
}
이때 나오는 값은 9로 이중 for문이 각각 3번씩 돌아가서 3*3=9번 실행되게 되는 것입니다.
만약 for문을 돌리고 있는데 특정 조건에서 벗어나고 싶다 하면 break를 써서 빠져나오면 됩니다.
break란 해당 for문이나 while문에서 탈출할 때 쓰는 명령어로 중간에 탈출하고 싶을 때 자주 씁니다.
그런데 break는 주의해야될 점이 있는데 이중 for문에서 입니다.
#include<iostream>
using namespace std;
int main() {
int num = 0;
for (int i = 0;i < 3;i++) {
for (int j = 0;j < 3;j++) {
if (num == 0) {
break;
}
}
num++;
}
cout << num;
}
위 코드에서 분명히 break를 썼는데 탈출이 안되고 3이 출력되었습니다. break가 해당 for문에서 작동하고 바깥 for문에서는 탈출을 못한 것입니다.
이이 점을 유의해야 됩니다.
만만약 완전히 탈출하고 싶다면 break를 두 번쓰면 됩니다.
'코딩공부 > C++기초' 카테고리의 다른 글
3주차 switch문 (C언어, C++) (0) | 2024.03.29 |
---|---|
2주차 while문과 do while문 (0) | 2024.03.22 |
2주차 if문 (0) | 2024.03.22 |
1주차 c++ 변수 (0) | 2024.03.15 |
객체 프로그래밍 ( (0) | 2024.03.08 |
댓글