본문 바로가기

C 언어/임베디드 C

while문의 반복횟수

/*1부터 5까지의 합을 구하는 프로그램*/

#include <stdio.h>

int main()
{
 int number = 1, sum = 0;

 while(number < 5)
 {
  sum = sum + number; //sum = sum + number++;
  number = number + 1; //number++;
 }
 printf("0 The sum of the first 5 integer is %d\n", sum);
 return 0;
}
 
결과
0 The sum of the first 5 integer is 10

sum = sum + number++;  은  sum = sum + number;
                                         number = number + 1;(또는 number++;)으로 입력해 주는것이 보기 좋은 표현법이다.


/*위의 프로그램에서 오류를 찾기 위해 수정한 프로그램*/

#include <stdio.h>
#include <conio.h> //getch() 함수를 사용할 때는 반드시 입력해주어야 하며, 윈도우 운영체제만 가능하다. 그 이유는 C표준이 아니기 때문이다. 버퍼를 사용하지 않는다.
 *버퍼란  동작속도가 크게 다른 두 장치 사이에 접속되어 속도 차를 조정하기 위하여 이용되는 일시적인 저장장치이다. 

int main()
{
 int number = 1, sum = 0;

 while (number < 5)
 {
  sum = sum + number;
  printf("number : %d\tsum : %d\n", number, sum);
  number++;
  getch(); //아무키나 누르면 다음 반복이 실행된다.
 }
 printf("The sum of first 5 integer is %d\n", sum);
 return 0;
}

결과
number : 1                sum : 1
number : 2                sum : 3
number : 3                sum : 6
number : 4                sum : 10
0 The sum of the first 5 integer is 10


-  printf("number : %d\tsum : %d\n", number, sum);
반복문내의 주요변수 number와 sum의 값을 출력함으로써 4까지의 합만 구한 것을 쉽게 찾을 수 있다. 프로그램의 오류 수정에서, 어떤 변수를 어디에서 출력해야 할지를 결정하는 것이 중요하다.

-getch()
여기서의 역할은 while문을 한꺼번에 반복수행치 않고, 매 반복마다 사용자가 키를 누를 때까지 기다리는 역할을 한다. 사용자는 반복문의 단계적 수행을 볼 수 있다. 이때 아무키나 눌러도 무방하다.

'C 언어 > 임베디드 C' 카테고리의 다른 글

for문(1)  (0) 2011.04.11
while문의 무한반복  (0) 2011.04.07
while문이 한번도 실행되지 않는 경우  (0) 2011.04.07
while문(3)  (0) 2011.04.07
while문(2)  (0) 2011.04.06