U E D R , A S I H C RSS

고한종/배열을이용한구구단과제



#include<stdio.h>

int main()
{
	int onOff;
	char keyOnOff;
	onOff=1;

	while(onOff)
	{

		//put your code in here.

		int arr[9]={1,2,3,4,5,6,7,8,9};
		int i;
		int n;
		printf("배열을 이용한 구구단. n을 입력하세요.");
		scanf("%d",&n);
		
		for(i = 0 ; i < 9 ; i++)
		{
			printf("%d * %d = %d\n",n,arr[i],n*arr[i]);
		}

		//code zone is end.


		printf("재실행 하시겠습니까? (y/n)\n\n");
		keyOnOff=getch();
		switch(keyOnOff)
		{			
		case 'y':
			onOff=1;
			break;
		case 'n':
			onOff=0;
			break;
		default :
			break;
		}
	}

}

// 괜히 화려해 보일려고 on/off 코드 집어 넣었음요.


덧글


  • 오 ㅋㅋㅋ 윤종하 게임 만들면서 열심히 공부했나보네. 근데 한 가지 말해주자면 getch()를 쓰면 stdin 버퍼에 입력받은 값이 계속 남아있어서 무한루프같은 문제가 생길 수 있어. 그래서 fflush(stdin);이라는 문장을 getch()를 사용한 이후에 한 번 써주는게 좋아. 근데 코드 대충 읽어보니까 n 누르는거 아니면 while 계속 돌아갈듯?- 윤종하
  • 우연히 들어와서 봤는데 fflush()는 output stream에 사용하도록 만들어진 함수고, fflush(stdin)은 MS의 컴파일러에서만 지원하는 거라서 linux쪽에서는 작동하지 않는다고 하니까 그것도 알아두는 것이 좋지 싶어요. - 서민관
참고 링크 : http://k.daum.net/qna/view.html?qid=0DYSq
  • 조금 더 찾아봤는데 input stream을 비우는 표준 함수는 없다는 것 같네요. 이식성 등을 생각하면 이런 코드를 쓰는 걸 생각해보는 것도 좋을지도. - 서민관

void trash(void)
{
    int c;

    while ((c=getchar()) != EOF && c != '\n');
}
참고 링크 : http://rantis7.egloos.com/2404014
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:28:43
Processing time 0.0135 sec