사용자로부터 두 개의 숫자를 입력받아서 구구단을 출력하는 프로그램을 작성해 보자. 예를 들어서 사용자가 3과 5를 입력하면, 3단, 4단, 5단을 출력해야 한다. 또한 2와 4를 입력받으면 2단, 3단, 4단을 출력해야 한다.
단 조건이 있다. 사용자는 두 개의 숫자를 입력할 때에 입력 순서에 자유로워야 한다. 즉 3과 5를 입력하건, 5와 3을 입력하건 프로그램은 같은 결과를 출력해야 한다. 이 문제의 해결 방법은 상당히 다양하게 나타날 수 있다. 그러나 효율적인 구성은 존재하기 마련이다.

#include <stdio.h>


void nine_nine(int min, int max);


int main(void)
{
      int a, b;


      printf("두 개의 정수 입력 : ");
      scanf("%d %d", &a, &b);


      if(a<b)
            nine_nine(a, b);
      else
            nine_nine(b, a);


      return 0;
}


void nine_nine(int min, int max)
{
      int i;


      for( ; min<=max; min++)
            for(i=1; i<=9; i++)
                  printf("%d * %d = %d\n", min, i, min*i);
}

신고

+ Recent posts

티스토리 툴바