산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C의 루프:For, While, Do While 루프 문 [예제]

C에서 루프란 무엇입니까?

C에서 반복문 명시된 조건이 거짓이 될 때까지 일련의 명령문을 여러 번 실행합니다. C의 루프는 루프의 본체와 제어문의 두 부분으로 구성됩니다. 제어 문은 지정된 조건이 false가 될 때까지 루프 본문을 실행하도록 지시하는 몇 가지 조건의 조합입니다. C 루프의 목적은 동일한 코드를 여러 번 반복하는 것입니다.

이 튜토리얼에서는 배우게 될 것입니다-

C의 루프 유형

프로그램에서 제어문의 위치에 따라 C의 반복문은 두 가지 유형으로 분류됩니다.

1. 엔트리 제어 루프

2. 제어 루프 종료

C의 항목 제어 루프에서 루프의 본문을 실행하기 전에 조건을 확인합니다. 사전 검사 루프라고도 합니다.

출구 제어 루프에서 , 루프의 본문을 실행한 후 조건을 확인합니다. 사후 검사 루프라고도 합니다.

제어 조건은 잘 정의되고 지정되어야 합니다. 그렇지 않으면 루프가 무한히 실행됩니다. 실행을 멈추지 않고 명령문을 여러 번 처리하는 루프를 무한 루프라고 합니다. . 무한 루프는 "무한 루프라고도 합니다. .” 다음은 무한 루프의 몇 가지 특징입니다.

1. 종료 조건이 지정되지 않았습니다.

2. 지정된 조건이 충족되지 않습니다.

지정된 조건에 따라 루프 본문의 실행 여부가 결정됩니다.

'C' 프로그래밍 언어는 세 가지 유형의 루프 구성을 제공합니다.

1. while 루프

2. do-while 루프

3. for 루프

Sr. 아니요. 루프 유형 설명 1.While LoopIn while 루프에서는 루프의 본문을 처리하기 전에 조건을 평가합니다. 조건이 참이면 루프의 본문만 실행됩니다.2.Do-While 루프 do...while 루프에서 조건은 항상 루프의 본문 다음에 실행됩니다. 종료 제어 루프라고도 합니다.3.For 루프 for 루프에서 초기 값은 한 번만 수행되고 조건은 각 반복 후에 카운터를 고정 값과 테스트하고 비교하여 false가 반환될 때 for 루프를 중지합니다. .

C의 while 루프

while 루프는 가장 간단한 루프 구조입니다. C 프로그래밍 언어의 while 루프 구문은 다음과 같습니다.

C에서 While 루프의 구문:

while (condition) {
             statements;
}

진입 통제 루프입니다. while 루프에서 조건은 루프의 본문을 처리하기 전에 평가됩니다. 조건이 참이면 루프의 본문이 실행됩니다. 루프의 본문이 실행된 후 제어는 다시 처음으로 돌아가서 조건이 참인지 확인하고 조건이 거짓이 될 때까지 동일한 프로세스가 실행됩니다. 조건이 false가 되면 컨트롤이 루프를 벗어납니다.

루프를 종료한 후 제어는 루프 바로 뒤에 있는 명령문으로 이동합니다. 루프의 본문은 둘 이상의 명령문을 포함할 수 있습니다. 하나의 명령문만 포함하는 경우 중괄호는 필수가 아닙니다. 비록 본문에 하나의 문장이 있더라도 중괄호를 사용하는 것은 좋은 습관입니다.

while 루프에서 조건이 true가 아니면 루프의 본문은 한 번도 실행되지 않습니다. 이는 곧 보게 될 do while 루프에서 다릅니다.

다음 프로그램은 C 프로그래밍 예제의 while 루프를 보여줍니다.

#include<stdio.h>
#include<conio.h>
int main()
{
	int num=1;	//initializing the variable
	while(num<=10)	//while loop with condition
	{
		printf("%d\n",num);
		num++;		//incrementing operation
	}
	return 0;
}

출력:

1
2
3
4
5
6
7
8
9
10

위의 프로그램은 while 루프의 사용을 보여줍니다. 위의 프로그램에서 while 루프를 사용하여 1에서 10까지 일련의 숫자를 인쇄했습니다.

<중앙>

<그림>

C 프로그래밍의 While 루프

  1. num이라는 변수를 값 1로 초기화했습니다. 1에서 10까지 인쇄하므로 변수는 값 1로 초기화됩니다. 0에서 인쇄하려면 초기화 중에 값 0을 할당하십시오.
  2. while 루프에서 조건(num<=10)을 제공했는데, 이는 num 값이 10이 될 때까지 루프가 본문을 실행한다는 것을 의미합니다. 그 후에 루프가 종료되고 제어가 외부로 떨어집니다. 루프.
  3. 루프의 본문에는 숫자를 인쇄하는 인쇄 기능과 루프를 실행할 때마다 값을 증가시키는 증가 작업이 있습니다. num의 초기값은 1이고, 실행 후에는 2가 되고, 다음 실행에서는 3이 됩니다. 이 과정은 값이 10이 될 때까지 계속된 다음 콘솔에 시리즈를 출력하고 루프를 종료합니다. .

\n은 값이 새 줄에 인쇄됨을 의미하는 서식 지정 목적으로 사용됩니다.

C에서 Do-While 루프

C의 do…while 루프는 조건이 항상 루프 본문 다음에 실행된다는 점을 제외하고는 while 루프와 유사합니다. 종료 제어 루프라고도 합니다.

C 프로그래밍 언어에서 do while 루프의 구문은 다음과 같습니다.

C에서 Do-While 루프의 구문:

 do {
  statements
} while (expression);

while 루프에서 보았듯이 조건이 참인 경우에만 본문이 실행됩니다. 어떤 경우에는 조건이 거짓인 경우에도 루프의 본문을 한 번 이상 실행해야 합니다. do-while 루프를 사용하여 이러한 유형의 작업을 수행할 수 있습니다.

do-while 루프에서 루프의 본문은 항상 적어도 한 번 실행됩니다. 본문이 실행된 후 조건을 확인합니다. 조건이 참이면 루프 본문을 다시 실행합니다. 그렇지 않으면 루프 외부로 제어가 전송됩니다.

while 루프와 유사하게, 제어가 루프를 벗어나면 루프가 실행된 직후의 명령문입니다.

while 루프와 do-while 루프의 중요한 차이점은 while 루프에서 while이 시작 부분에 쓰여진다는 것입니다. do-while 루프에서 while 조건은 끝에 작성되고 세미콜론(;)으로 종료됩니다.

C의 다음 루프 프로그램은 do-while 루프의 작동을 보여줍니다.

다음은 2번 테이블을 인쇄하기 위한 C 예제의 do-while 루프입니다.

#include<stdio.h>
#include<conio.h>
int main()
{
	int num=1;	//initializing the variable
	do	//do-while loop 
	{
		printf("%d\n",2*num);
		num++;		//incrementing operation
	}while(num<=10);
	return 0;
}

출력:

2
4
6
8
10
12
14
16
18
20

위의 예에서 do-while 루프를 사용하여 2의 곱셈 테이블을 인쇄했습니다. 프로그램이 시리즈를 인쇄할 수 있었던 방법을 살펴보겠습니다.

<중앙>

<그림>

C 프로그래밍의 Do-While 루프

  1. 먼저 변수 'num'을 값 1로 초기화했습니다. 그런 다음 do-while 루프를 작성했습니다.
  2. 루프에서 num 값에 2를 곱하여 시리즈를 인쇄하는 인쇄 함수가 있습니다.
  3. 각 증가 후에 num의 값은 1씩 증가하고 화면에 인쇄됩니다.
  4. 처음에 num의 값은 1입니다. 루프 본문에서 인쇄 기능은 다음과 같이 실행됩니다. 2*num 여기서 num=1, 2*1=2 따라서 값 2가 인쇄됩니다. . 이것은 num의 값이 10이 될 때까지 계속됩니다. 그 후에 루프가 종료되고 루프 바로 뒤에 있는 문이 실행됩니다. 이 경우 0을 반환합니다.

C의 For 루프

for 루프는 'C' 프로그래밍에서 보다 효율적인 루프 구조입니다. C에서 for 루프 구문의 일반적인 구조는 다음과 같습니다.

C에서 For 루프의 구문:

for (initial value; condition; incrementation or decrementation ) 
{
  statements;
}
  • for 루프의 초기 값은 한 번만 수행됩니다.
  • 조건은 각 반복 후에 카운터를 고정 값과 테스트하고 비교하여 false가 반환될 때 for 루프를 중지하는 부울 표현식입니다.
  • 증가/감소는 카운터를 설정한 값만큼 증가(또는 감소)시킵니다.

다음 프로그램은 C 프로그래밍 예제의 for 루프를 보여줍니다.

#include<stdio.h>
int main()
{
	int number;
	for(number=1;number<=10;number++)	//for loop to print 1-10 numbers
	{
		printf("%d\n",number);		//to print the number
	}
	return 0;
}

출력:

1
2
3
4
5
6
7
8
9
10

위의 프로그램은 for 루프를 사용하여 1-10까지의 숫자 시리즈를 출력합니다.

<중앙>

<그림>

C 프로그래밍의 For 루프

  1. 값을 저장하기 위해 int 데이터 유형의 변수를 선언했습니다.
  2. for 루프의 초기화 부분에서 변수 번호에 값 1을 할당했습니다. 조건 부분에서 조건을 지정한 다음 증가 부분을 지정했습니다.
  3. 루프의 본문에는 콘솔의 새 줄에 숫자를 인쇄하는 인쇄 기능이 있습니다. 첫 번째 반복 후에 값이 증가하고 2가 될 것입니다. 이제 변수 number는 값 2를 갖습니다. 조건이 다시 확인되고 조건이 true이므로 루프가 실행됩니다. 그러면 화면에 두 개가 인쇄됩니다. 이 루프는 변수 값이 10이 될 때까지 계속 실행됩니다. 그 후 루프가 종료되고 1-10 시리즈가 화면에 인쇄됩니다.

C에서 for 루프는 각 부분에서 쉼표로 구분된 여러 표현식을 가질 수 있습니다.

예:

for (x = 0, y = num; x < y; i++, y--) { 
  statements; 
}

또한 세미콜론을 추가하여 초기 값 표현식, 조건 및/또는 증분을 건너뛸 수 있습니다.

예:

int i=0;
int max = 10;
for (; i < max; i++) {
  printf("%d\n", i);
}

루프는 외부 루프와 내부 루프가 있는 곳에 중첩될 수도 있습니다. 외부 루프의 각 반복에 대해 내부 루프는 전체 주기를 반복합니다.

C 프로그래밍에서 중첩 for 루프를 사용하여 곱셈 테이블을 출력하는 for 루프에 여러 조건이 있는 다음 예를 고려하십시오.

#include <stdio.h>
int main() {
int i, j;
int table = 2;
int max = 5;
for (i = 1; i <= table; i++) { // outer loop
  for (j = 0; j <= max; j++) { // inner loop
    printf("%d x %d = %d\n", i, j, i*j);
  }
  printf("\n"); /* blank line between tables */
}}

출력:

1 x 0 = 0
1 x 1 = 1
1 x 2 = 2
1 x 3 = 3
1 x 4 = 4
1 x 5 = 5

2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10

for 루프의 중첩은 모든 수준에서 수행할 수 있습니다. 중첩 루프는 코드를 읽을 수 있도록 적절하게 들여쓰기해야 합니다. 일부 버전의 'C'에서는 중첩이 최대 15개 루프로 제한되지만 일부는 더 많이 제공합니다.

중첩 루프는 대부분의 추가 자습서에서 보게 될 배열 응용 프로그램에서 사용됩니다.

C의 break 문

break 문은 주로 switch 문에서 사용됩니다. 루프를 즉시 중지할 때도 유용합니다.

while 루프를 종료하기 위해 break를 도입하는 다음 프로그램을 고려합니다.

#include <stdio.h>
int main() {
int num = 5;
while (num > 0) {
  if (num == 3)
    break;
  printf("%d\n", num);
  num--;
}}

출력:

5
4

C에서 계속 설명

다음 반복으로 건너뛰고 루프에 남아 있으려면 계속 문을 사용해야 합니다.

예:

#include <stdio.h>
int main() {
int nb = 7;
while (nb > 0) {
  nb--;
  if (nb == 5)
    continue;
 printf("%d\n", nb);
}}

출력:

6
4
3
2
1

따라서 값 5는 건너뜁니다.

어떤 루프를 선택할까요?

루프를 선택하는 것은 프로그래머에게 항상 어려운 작업입니다. 루프를 선택하려면 다음 단계를 수행하십시오.

  • 문제를 분석하고 사전 테스트 또는 사후 테스트 루프가 필요한지 확인합니다.
  • 사전 테스트가 필요한 경우 while 또는 for 루프를 사용하세요.
  • 사후 테스트가 필요한 경우 do-while 루프를 사용합니다.

요약

  • C에서 루프 정의:루프는 모든 프로그래밍 언어의 핵심 개념 중 하나입니다. C 언어의 루프는 조건문을 사용하여 구현됩니다.
  • C의 루프 제어 문의 블록은 조건이 거짓이 될 때까지 여러 번 실행됩니다.
  • C 프로그래밍의 루프에는 진입 제어 및 종료 제어의 두 가지 유형이 있습니다.
  • C에서 다양한 루프 제어 명령어를 나열하세요:C 프로그래밍은 1) while 2) do-while 및 3) for 루프 제어 명령어를 제공합니다.
  • For 및 while 루프 C 프로그래밍은 C 언어의 항목 제어 루프입니다.
  • Do-while은 C의 종료 제어 루프입니다.

C 언어

  1. C# while 및 do...while 루프
  2. C# for 루프
  3. C# foreach 루프
  4. 루프용 C++
  5. 자동화 및 프로세스 제어 루프 문제를 해결하는 더 나은 방법
  6. while과 do-while의 차이점:예제와 함께 설명
  7. For 루프를 사용하는 JAVA 프로그램의 암스트롱 번호
  8. while 및 for 루프를 사용하는 Java의 회문 수 프로그램
  9. Python For &While 루프:열거, 중단, 계속 문
  10. SINUMERIK 840D 프로그래밍 WHILE 루프 사용