[C#] 5. 반복문

치치·2024년 11월 20일
0

C#

목록 보기
6/16
post-thumbnail

📌 반복문 이란?

  • 프로그램 내에서 특정한 작업을 반복적으로 수행하는 명령문

📌 For문

  • 초기식을 연산하여 조건식의 결과에 따라 특정한 횟수만큼 반복하는 반복문

    for(초기식; 조건식; 증감식)
    {
    ____ 실행할 내용;
    }

for(int i = 0; i <= 5; i++) 
{
    Console.WriteLine(i);
}

출력값: 0 1 2 3 4 5

  • for문의 경우 조건이 끝나는 형태와 반대로 초기식을 연산하게 되면 조건이 일치하지 않아, 계속 반복적으로 실행되는 문제가 발생
for(int i = 5; i  < 10; i--) 
{
    Console.WriteLine(i);
}

출력값: 조건식이 계속 참이어서 무한루프에 빠짐


📌 While문

  • 특정 조건을 만족할 때까지 계속해서 주어진 명령문을 실행하는 반복문
  • while문의 경우 위에서 아래로 실행되며, 아래에 있는 명령문의 실행이 다 끝나면 다시 위에 있는 명령문으로 돌아가서 반복하는 구조

  • count가 5보다 작거나 같을 때 까지 반복
int Count = 1;

while (Count <= 5)
{
    Console.WriteLine(Count); // 1 2 3 4 5
    Count++;
}

📌 do While문

  • 조건과 상관없이 한 번의 작업을 수행한 다음 조건에 따라 명령문을 실행하는 반복문

  • ✅ 코드 상에서 while문이 거짓이더라도 do문은 한번 실행된다.
    • 조건이 true면 do { } 다시 실행
#include <stdio.h>

int main() {
    int i = 0;

    do {
        printf("%d ", i);
        i++;
    } while (i < 5);

    return 0;
}
  • 🔒 do while문은 do에서 변수를 생성하고 초기화를 하게 되면, while문의 조건에서 do에서 생성한 변수를 인식할 수 없다

📌 Continue문

  • 해당 조건문만 실행하지 않고, 반복문은 이어서 실행되는 제어문
  • 해당 코드는 3의 배수만 건너뛰고 증감식으로 이동 -> 3의 배수 제외 다 출력
for(int i = 1; i <= 10; i++)
{
    if(i % 3 == 0) 
    {
        continue;
    }
    Console.Write(i + " ");
}

출력값: 1 2 4 5 7 8 10


📌 2중 for문

  • for문 안에 for문이 하나 더 들어가있는 것
  • 바깥쪽 for문이 한번 돌때, 안쪽 for문이 3번 돌게됨
  • 바깥쪽 for문은 3번 출력, 안쪽 for문은 9번 출력
for(int i = 0; i < 3;  i++) 
{
    Console.WriteLine("i의 값은: ");

    for(int j = 0; j < 3; j++)
    {
        Console.Write(j+ " "); // 0 1 2
    }
    Console.WriteLine();
}

출력값:


🔒 2중 for문을 활용한 구구단

for(int i = 1; i <= 9; i++)
{
    for(int j = 1; j <= 9; j++)
    {
        Console.WriteLine(i + "X" + j + "=" + i * j);
    }
    Console.WriteLine();
}

🔒 2중 for문을 활용한 별찍기

for(int i = 0; i < 5; i++)
{
    for(int j = 0; j <= i; j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

출력값:

for(int i = 1;i <= 5;i++)
{
    for(int j = i; j <= 5;j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

출력값:



📌 foreach문

✅ C#에서는 foreach - in 을 사용한다.

ex) text라는 덩어리에서 하나씩 확인

string text = "qwer";
foreach(char c in text)
{
	print(c);
}

✅ C++에서 for( : )

string text = "qwer";
for(char & c : text)
{
	cout << c << endl;
}
profile
뉴비 개발자

0개의 댓글