본문 바로가기
■ Programming /[C,C++] 문제

[ C언어 ][ C언어 구구단 ] while문을 이용한 구구단 출력하기 정복!

by Popbox 2017. 4. 17.
반응형

[ C언어 ][ C언어 구구단 ] while문 사용 구구단 출력하기 정복!

 

 

 

  

 
while문을 이용한 구구단

 

안녕하세요.

C언어를 배우시면 한번쯤은 만들어보는 프로그램.

 

for문을 이용한 구구단 출력 프로그램http://popbox.tistory.com/82

 

 

 

구구단 출력 프로그램을 만들어 보겠습니다.

 

while문으로 만든 구구단을 물어보시는 분들이 많아서 작성하게 됬습니다.

 

 

 

하지만 while문보다 for문이 더 깔끔합니다.

 

 

 
 
 

 

 

 

 

 

 

  1. while문으로 구구단 출력 - 세로 -

 

 

whille문으로 구구단 출력하는 법 입니다.

-> 사용자에게 숫자를 입력받아 해당되는 결과를 출력하는 구구단 프로그램입니다.

 

i 는 단수

j 는 곱해지느 수 입니다.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <stdio.h>
 
int main()
{
    /* 세로 버전 */
    int i = 1, j = 0;
    int input = 0;
    printf("\t[ 구구단 세로 버전]\n");
    printf("원하는 구구단 입력 [0종료 , 1 모두출력] : ");
    scanf("%d",&input);
 
    while (1)
    {
        if (input == 0)
        {
            printf("종료합니다.\n");
            break;
        }
        else if (input == 1)
        {            
            j++;
            if (j > 9)
            {
                i++;
                j = 1;
                printf("\n");
            }
        if (i > 9break;
        }
        else
        {
            i = input;
            j++;
            if (j > 9break;
        }    
        //[공통] 출력
        printf("%2d x %d = %2d\n", i, j, (i*j));
    }
    return 0;
}
 
cs

 

 

 

 

 

 

 

  2. while문으로 구구단 출력 - 가로 -

 

가로로 이쁘게 출력되는 구구단 프로그램입니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <stdio.h>
 
int main()
{
    /* 가로 버전 */
    int i = 1, j = 1;
    int input = 0;
    printf("\t[ 구구단 가로 버전]\n");
    printf("원하는 구구단 입력 [0종료 , 1 모두출력] : ");
    scanf("%d",&input);
 
    while (1)
    {
        if (input == 0)
        {
            printf("종료합니다.\n");
            break;
        }
        else if (input == 1)
        {
            printf("%2d x %d = %2d ", i, j, (i*j));
 
            i++;
            if (i > 9)
            {
                j++;
                i = 1;
                printf("\n");
            }
            if (j > 9break;
        }
        else
        {
            i = input;
            printf("%2d x %d = %2d\n", i, j, (i*j));
            j++;
            if (j > 9break;
        }        
    }
    return 0;
}
cs

 

 

 

 

 

 

 감사합니다. 공감 한번 부탁드려요.

[ 다음 장 ]

for문을 이용한 구구단 출력 바로가기 : http://popbox.tistory.com/82

 
 

 

 
  

 



반응형

댓글