반응형

Do while문 예제 1

#include <stdio.h>

int main()
{
	int total=0, num=0
    
    do
    {
    	printf("정수입력(0 to quit): ");
        scanf_s("%d", &num);
        total +=num;
    }while(num != 0);
    printf("합계 : ", total);
    
    return 0;
}

do~while문은 while문과 다르게 do에 있는 문장을 반드시 한번은 출력하고 while에 있는 조건을 검사하고 만약 while 값이 0이라면 do문을 탈출


문제 1

예제 1의 프로그램을 while문 기반으로 만들어라

방법 1- 변수 num의 값을 적절히 초기화해서 첫 번째 반복조건의 검사결과가 참이 되게 해야한다.

#include <stdio.h>

int main()
{
	int A = 1;
	int sum = 0;

	
	while (A != 0)
	{
		printf("정수 입력(0 to quit)");
		scanf_s("%d", &A);

		sum += A;
	}
	printf("합계 : %d", sum);

	return 0;
}

 

 


방법 2 - while문에 진입하기 전에 프로그램 사용자로부터 값을 1회 입력 받게 한다.

#include <stdio.h>

int main()
{
	int A = 0;
	int sum = 0;

	printf("정수 입력(0 to quit)");
	scanf_s("%d", &A);
	sum += A;

	while (A != 0)
	{
		printf("정수 입력(0 to quit)");
		scanf_s("%d", &A);

		sum += A;
	}
	printf("합계 : %d", sum);

	return 0;
}

 


문제 2

0이상 100이하의 정수 중에서 작수의 합을 출력하는 프로그램을 구현하되, do~while문 기반으로 구현해보자.

참고로 덧셈의 결과는 2550이 되어야한다.

#include <stdio.h>

int main()
{
	int A = 2;
	int sum = 0;
	do {
		sum += A;
		A += 2;
	} while (A <= 100);
	printf("0~100까지 짝수의 합은 : %d", sum);
}

 

 


문제3

2~9단까지 출력하는 do~while문 만들어보자.

#include <stdio.h>

int main()
{
	int A = 2;
	int B = 1;
	do {
		B = 1;
		do {

			printf("%dx%d=%d ", A,B,A*B);
			B++;
		} while (B<=9);
		A++;
		printf("\n");
	} while (A <= 9);

}

 

반응형

+ Recent posts