이카루스 님이 쓰신 글 :
: 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');
: : }
: :
: : ************************************************************************************************
: :
: :
: : int main(int argc, char* argv[])
{
int i,a; //반복구간//숫자입력부분
char st; //입력부분
puts("구구단프로그램입니다");
{
while (1)
{
printf("숫자입력 :");scanf("%d",&a); //단입력부분
if (a>=1 && a<=10)break; //1~10까지만입력
puts("숫자1~~10까지만입력하세요");
}
clrscr(); //화면 지우기 ㅎㅎㅎ
for (i = 0; i <a; i++)
{
for (i=0; i<10;i++)
printf("%2d * %d=%d\n",a,i,a*i);
}
do{
puts("계속(y/n)?"); fflush(stdin);
scanf("%c",&st);
if (st=='y'||st=='Y'||st=='n'||st=='N')break;
puts("다시 입력해주세여");
}while(1);
if(st=='n'||st=='N')break;
}
puts("종료....");
getch();
return 0;
}
|