Break and Continue
Coddy C# 여정의 논리 및 흐름 섹션에 포함된 레슨 — 66개 중 21번째.
C#에서 break와 continue는 루프 실행에 대한 더 큰 제어를 제공하는 문장입니다.
break 문
break 문은 루프를 즉시 종료합니다:
for (int i = 1; i <= 10; i++)
{
if (i == 5)
{
break; // i가 5와 같을 때 루프를 종료합니다
}
Console.WriteLine(i);
}위 코드를 실행한 후 출력은 다음과 같습니다:
1
2
3
4루프는 i가 5와 같아지자마자 멈추고, 루프 이후의 코드로 실행이 계속됩니다.
continue 문
continue 문은 현재 반복의 나머지 부분을 건너뛰고 다음 반복으로 이동합니다:
for (int i = 1; i <= 5; i++)
{
if (i == 3)
{
continue; // 현재 반복의 나머지 부분을 건너뜁니다
}
Console.WriteLine(i);
}위 코드를 실행한 후 출력은 다음과 같습니다:
1
2
4
5값 3은 출력되지 않습니다. 왜냐하면 continue 문이 해당 반복의 Console.WriteLine(i)을 건너뛰기 때문입니다.
챌린지
쉬움ProcessNumbers라는 메서드를 작성하세요. 이 메서드는 정수 배열을 매개변수로 받습니다. 이 메서드는 다음을 수행해야 합니다:
- 배열의 모든 숫자를 출력합니다
- 음수인 숫자는 출력하지 않고 건너뜁니다 (
continue사용) - 100보다 큰 숫자를 만나면 처리를 중단합니다 (
break사용) - 출력된 모든 숫자의 합을 반환합니다
치트 시트
break 문은 루프를 즉시 종료합니다:
for (int i = 1; i <= 10; i++)
{
if (i == 5)
{
break; // i가 5와 같을 때 루프를 종료
}
Console.WriteLine(i);
}continue 문은 현재 반복의 나머지를 건너뛰고 다음 반복으로 이동합니다:
for (int i = 1; i <= 5; i++)
{
if (i == 3)
{
continue; // 이 반복의 나머지를 건너뛰기
}
Console.WriteLine(i);
}직접 해보기
using System;
public class Program
{
public static int ProcessNumbers(int[] numbers)
{
// 여기에 코드를 작성하세요
return 0;
}
public static void Main(string[] args)
{
// 즉시 테스트를 위한 샘플 배열 생성
int[] numbers = { 5, -3, 10, 15, -7, 105, 20 };
int sum = ProcessNumbers(numbers);
Console.WriteLine("Sum: " + sum);
// 제공된 경우 사용자 입력으로도 시도
try
{
string input = Console.ReadLine();
if (!string.IsNullOrEmpty(input))
{
string[] parts = input.Split(',');
int[] inputNumbers = new int[parts.Length];
for (int i = 0; i < parts.Length; i++)
{
inputNumbers[i] = int.Parse(parts[i].Trim());
}
int inputSum = ProcessNumbers(inputNumbers);
Console.WriteLine("Input Sum: " + inputSum);
}
}
catch (Exception)
{
// 입력에 오류가 있으면 샘플 결과로 계속 진행
}
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
논리 및 흐름의 모든 레슨
1Multi-dimensional Arrays
2D Arrays BasicsDeclaring and Initializing 2DAccessing 2D Array ElementsNested Loops with 2D ArraysJagged ArraysCommon Matrix OperationsRecap - Multi-dimensional4Flow Control Techniques
Early ReturnsGuard ClausesJump Statements (goto)Break and ContinueFlatten Nested Conditionals7Logical Operators Advanced
Short-Circuit EvaluationConditional Logical OperatorsOperator PrecedenceRecap - Advanced Operators2Advanced Decision Making
Multiple ConditionsComplex Boolean LogicIf vs. Switch ComparisonNested Switch StatementsRecap - Advanced Decisions5Exception Handling
Try-Catch BasicsException TypesMultiple Catch BlocksWorking with FilesFinally BlockUsing vs. Try-FinallyCustom ExceptionsRecap - Error Handling3Loop Enhancements
Loop PerformanceIterating ComplexEach Loop TypeRefactoring LoopsRecap - Optimized Loops6Null Handling
Null Reference BasicsNullable Value TypesNull Checking PatternsDefensive ProgrammingRecap - Null Safety