C언어는 순차적 언어입니다. 즉 위에서부터 아래로 내려오며 실행된다는 말입니다.
#include <stdio.h>
void main()
{
int d;
char ck;
if(dan>1, dan<10) <-dan을 선언하지 않고 사용하면 사용할 수 없습니다.
아마도 에러는 undeclared identifier라고 하겠죠.
{
printf("%3d단\n\n",dan); 마찬가지로 dan을 선언하지 않아 에러메세지를 보여주겠죠.
for(j=1;j<=9;j++)
{
printf("%d * %d = %d\n",dan,j,dan*j);
do{
printf("원하는 단을 입력하세요\n");
scanf("%d",&d);fflush(stdin);
gugu(d); <-여기서 gugu는 함수를 사용시를 의미하는 것 같은데 gugu함수를 만들지
않았으니 실행되지 않겠지요.
printf("계속하시겠습니까?y or n\n");
scanf("%c",&ck);
if(ck=='n')
break;
if(ck!='n'&&ck!='y')
{
printf("잘못입력하셨습니다.?y or n\n");
scanf("%c",&ck);
}
}while(ck=='y');
}
}
마지막으로 do while문은 실행시 조건에 맞지 않더라고 한번은 실행하게 되어 있습니다.
전제적은 구성을 다시 한번 생각해보시는 것이 좋을듯하네요 ^^;;;
그럼 즐프하세요.
otherspell 님이 쓰신 글 :
: 구구단 프로그램
:
: > 원하는 단을 입력받는다.
:
: > 최종 출력은 다음과 같이 구성한다.
:
:
:
: *************************
:
:
:
: x구구단
:
:
:
: *************************
:
:
:
: 2*1=2
:
: ....
:
: ...
:
: ...
:
: ...
:
:
:
: *************************
:
: 다른 단을 원하십니까? (y/n)>>
:
:
:
: >위의 출력에서와 같이 다른 단을 원하는 지에 대한 입력을 y또는 n으로 입력받는다.
:
: > 위에서 y인 경우, 다시 원하는 단을 물어보고 입력된다면 최종출력을 반복한다.
:
: >위세서 n인 경우. 프로그램이 종료된다.
:
:
:
:
: #include <stdio.h>
: void main()
: {
: int d;
: char ck;
:
: if(dan>1, dan<10)
: {
: printf("%3d단\n\n",dan);
: for(j=1;j<=9;j++)
: {
: printf("%d * %d = %d\n",dan,j,dan*j);
:
: do{
: printf("원하는 단을 입력하세요\n");
: scanf("%d",&d);fflush(stdin);
: gugu(d);
: printf("계속하시겠습니까?y or n\n");
: scanf("%c",&ck);
: if(ck=='n')
: break;
: if(ck!='n'&&ck!='y')
: {
: printf("잘못입력하셨습니다.?y or n\n");
: scanf("%c",&ck);
: }
: }while(ck=='y');
: }
:
:
:
:
: 질문부분을 추가해봣는데 너무 어렵네요... 수정좀 부탁드려요...~~
|