C 언어의 루프는 주어진 조건이 만족될 때까지 코드의 일부를 반복하는 데 사용되는 제어 흐름 문입니다. 그만큼 do-while 루프 C의 세 가지 루프 문 중 하나이며 나머지는 while 루프와 for 루프입니다. 주로 배열, 벡터 및 기타 데이터 구조를 탐색하는 데 사용됩니다.
C에서 do…while 루프란 무엇입니까?
그만큼 do…C에 있는 동안 주어진 조건이 충족될 때까지 코드의 일부를 반복하는 데 사용되는 루프 문입니다. 의 형태이다 종료 제어 또는 사후 테스트 루프 여기서 루프 본문을 실행한 후 테스트 조건을 확인합니다. 이로 인해 do…while 루프의 명령문은 조건에 관계없이 항상 적어도 한 번 실행됩니다.
C의 do…while 루프 구문
do { // body of do-while loop } while ( condition );>
C에서 do…while 루프를 사용하는 방법
다음 예에서는 C 프로그래밍 언어에서 do…while 루프를 사용하는 방법을 보여줍니다.
씨
// C Program to demonstrate the use of do...while loop> #include> int> main()> {> > // loop variable declaration and initialization> > int> i = 0;> > // do while loop> > do> {> > printf> (> 'Geeks
'> );> > i++;> > }> while> (i <3);> > return> 0;> }> |
>
>산출
Geeks Geeks Geeks>
do…while 루프는 어떻게 작동하나요?

do while 루프의 구문 구조
do…while 루프의 작동 방식은 아래에 설명되어 있습니다.
- 프로그램 제어가 처음 do…while 루프에 올 때, 루프의 본문이 먼저 실행된 다음 테스트 조건/표현식이 확인됩니다. , 테스트 조건을 먼저 확인하는 다른 루프와는 다릅니다. 이 속성으로 인해 do…while 루프는 종료 제어 루프 또는 사후 테스트 루프라고도 합니다.
- 테스트 조건이 다음과 같이 평가될 때 진실 , 프로그램 제어가 시작됩니다 루프와 본문이 한 번 더 실행됩니다.
- 위의 과정은 테스트 조건이 true가 될 때까지 반복됩니다.
- 테스트 조건이 다음과 같이 평가될 때 거짓, 프로그램 제어는 다음 명령문으로 이동합니다. do…while 루프 뒤에.
C의 while 루프와 마찬가지로 초기화 및 업데이트는 do…while 루프 구문의 일부가 아닙니다. 우리는 루프 이전과 루프에서 각각 명시적으로 이를 수행해야 합니다.
아래 순서도는 C에서 do…while 루프의 흐름을 시각적으로 표현한 것입니다.
C do…while 루프 흐름도

C의 do…while 루프 흐름도
C의 중첩 do…while 루프
다른 루프와 마찬가지로 하나의 do…while 루프를 다른 루프에 중첩할 수도 있습니다. 다음 C 프로그램을 사용하여 설명합니다.
C의 중첩된 do…while 루프의 예:
씨
// C Program to demonstrate the nesting of do...while loop> #include> int> main()> {> > // declaring loop variables> > int> i = 0, j;> > int> count = 0;> > // outer loop starts> > do> {> > j = 0;> > // inner loop starts> > do> {> > printf> (> '%d '> , count++);> > j++;> > }> while> (j <3);> > // inner loop ends> > printf> (> '
'> );> > i++;> > }> while> (i <3);> > // outer loop ends> > return> 0;> }> |
>
>산출
0 1 2 3 4 5 6 7 8>
C의 중첩 루프에 대한 자세한 내용은 이 문서 - 예제가 포함된 C의 중첩 루프를 참조하세요.
C의 do…while 루프의 예
예제 1. C 처음부터 조건이 거짓인 경우 do…while 루프의 동작을 보여주는 프로그램입니다.
씨
문자열을 json 객체로
// C Program to demonstrate the do...while loop behaviour> // when the condition is false from the start> #include> #include> int> main()> {> > // declaring a false variable> > bool> condition => false> ;> > do> {> > printf> (> 'This is loop body.'> );> > }> while> (condition);> // false condition> > return> 0;> }> |
>
>산출
This is loop body.>
보시다시피 처음에는 조건이 거짓이더라도 루프 본문은 한 번만 실행됩니다. do…while 루프에서는 바디를 거쳐서 조건을 확인하기 때문에 컨트롤이 시작되면,
- 루프 몸체를 통과합니다.
- 본문의 모든 문을 실행합니다.
- 거짓으로 판명된 조건을 확인합니다.
- 그런 다음 루프를 종료합니다.
예제 2. do…while 루프를 사용하여 N의 곱셈표를 인쇄하는 C 프로그램
다음 예에서는 N의 곱셈표를 인쇄하기 위해 do…while 루프를 사용하는 방법을 보여줍니다.
씨
// C Program to print multiplication table using do...while> // loop> #include> int> main()> {> > int> N = 5, i = 1;> > do> {> > printf> (> '%d x %d = %d
'> , N, i, N * i);> > }> while> (i++ <10);> > return> 0;> }> |
>
자바의 버블 정렬
>산출
5 x 1 = 5 5 x 2 = 10 5 x 3 = 15 5 x 4 = 20 5 x 5 = 25 5 x 6 = 30 5 x 7 = 35 5 x 8 = 40 5 x 9 = 45 5 x 10 = 50>
C의 while 루프와 do...while 루프의 차이점
다음 표에는 중요한 사항이 나열되어 있습니다. while과 do…while 루프의 차이점 C에서
while 루프 | do…while 루프 |
---|---|
테스트 조건이 확인됩니다 루프 본문이 실행되기 전에. | 테스트 조건이 확인됩니다 시체를 실행 한 후. |
조건이 거짓일 때, 본체가 실행되지 않음 심지어 한 번. | 본체 do…while 루프가 적어도 한 번 실행됩니다. 조건이 거짓이더라도. |
그것은 일종의 사전 테스트 또는 진입 제어 루프. | 그것은 일종의 사후 테스트 또는 종료 제어 루프. |
세미콜론은 필요하지 않습니다. | 마지막에는 세미콜론이 필요합니다. |
이러한 차이점에 대한 자세한 내용은 이 문서를 참조하세요. C, C++, Java의 while 루프와 do-while 루프의 차이점
결론
결론적으로 C에서 유일한 종료 제어 루프인 do…while 루프를 사용하는 것도 코드의 특정 부분을 반복하는 것이지만 작동 방식이 while 루프 및 for와 같은 입력 제어 루프와는 다릅니다. 고리. 순환 연결 목록을 순회하는 경우와 같이 루프 본문 내에서 명령문을 한 번 이상 실행해야 하는 경우에 유용합니다.
C do…while 루프에 대한 FAQ
1. C에는 몇 가지 유형의 루프가 있습니까?
연령: C 언어에는 세 가지 유형의 루프가 있습니다.
- for 루프
- while 루프
- do…while 루프
2. 입력 제어 루프 또는 사전 테스트된 루프는 무엇입니까?
연령: 입력 제어 루프 또는 사전 테스트된 루프는 루프가 본문을 실행하기 전에 조건을 확인합니다. 루프의.
3. 종료 제어 또는 사후 테스트 루프는 무엇입니까?
연령: 종료 제어 루프 또는 사후 테스트 루프는 다음과 같은 루프입니다. 프로그램 제어는 루프 상태를 확인하기 전에 루프 본문에 옵니다. .
4. 최소한 한 번 이상 실행이 보장되는 루프는 무엇입니까?
연령: 그만큼 do…while 루프 종료 제어 루프 유형이므로 루프 본문에 있는 명령문을 한 번 이상 실행하는 것이 보장됩니다.
5. 본문에 명령문이 하나만 있는 경우 C do…while 루프 구문에서 중괄호를 건너뛸 수 있습니까?
답: 아니요. , C do…while 구문에서는 while 및 for 루프와 달리 명령문이 하나만 있어도 중괄호를 건너뛸 수 없습니다.
6. do…while 루프를 사용하여 C에서 무한 루프를 만드는 방법은 무엇입니까?
연령: 다음을 지정하여 C에서 무한 루프를 만들 수 있습니다. 항상 참이 되는 조건 루프 조건으로. 아래 프로그램은 이를 수행하는 방법을 보여줍니다.
씨
// C Program to create a infinite loop using do...while loop> // in C> #include> int> main()> {> > // infinite loop> > do> {> > printf> (> 'gfg '> );> > }> while> (1);> // always 1 ~ true> > return> 0;> }> |
>
>
산출
gfg gfg gfg gfg gfg gfg gfg .... (infinite)>