C언어 1주차반 인 새내기가 질문드립니다 ㅠㅠ
겨울
일주일차되서 게임을 만드는데
문제가 생겼습니다 ㅠㅠ
소스:
#include stdio.h
int main(void)
{
int LevelSelect;
int Level1=1;
int Answer1;
int Answera;
int Level2=2;
int Answer2;
int Level3=3;
int Answer3;
int Level4=4;
int Answer4;
int Level5=5;
int Answer5;
printf(레벨을 골라주세요 \n);
printf(1 2 3 4 5\n);
printf(주의 답이 틀리면 프로그램이 종료됩니다\n);
scanf(%d,&LevelSelect);
printf(레벨 %d 를 고르셨습니다.! \n게임을 시작합니다.,LevelSelect); //레벨 지정
if(LevelSelect==Level1) //레벨이 1일떄
{
printf(1+2 는?\n); //문제
scanf(%d,&Answer1);
if(Answer1==3) // 정답
printf(정답입니다\n);
else
printf(틀렸습니다 다시해보세요\n);
while(Answer1!=3)
{
printf(다시 해보세요\n);
scanf(%d,&Answera);
if(Answer1==3)
{
break;
}
}
goto One;
}
if(LevelSelect==Level2) // 레벨이 2일때
{
printf(4x5는?\n); //문제
scanf(%d,&Answer2);
if(Answer2==20) //정답
printf(정답입니다\n);
else
printf(다시 해보세요\n);
goto One;
}
if(LevelSelect==Level3) //레벨이 3일때
{
printf(x^2+4x+3=0 , x의 값은? (^은 계수를 의미)\n); //문제
scanf(%d,&Answer3);
if(Answer3==-3) // 정답
printf(정답입니다\n);
else
printf(다시 해보세요\n);
goto One;
}
if(LevelSelect==Level4) //레벨이 4일때
{
printf(sinθ+2=-√2, x의 값은?);
scanf(%d,&Answer4);
if(Answer4==30)
printf(정답입니다);
else
printf(틀렸습니다);
goto One;
}
if(LevelSelect==Level5) //레벨이 5일때
{
n
printf(3+1x2의 값은?);
if(Answer5==5)
printf(정답입니다!);
else
printf(다시 해보세요!);
goto One;
}
One:
printf(레벨%d를 클리어하셨습니다!! 다른 레벨을 골라주세요!,&LevelSelect);
printf(레벨%d를 클리어하셨습니다!! 다른 레벨을 골라주세요!,&LevelSelect);
printf(레벨을 골라주세요 \n);
if(LevelSelect==1)
printf(2 3 4 5);
if(LevelSelect==2)
printf(1 3 4 5);
if(LevelSelect==3)
printf(1 2 4 5);
if(LevelSelect==4)
printf(1 2 3 5);
if(LevelSelect==5)
printf(1 2 3 4);
printf(주의 답이 틀리면 프로그램이 종료됩니다\n);
scanf(%d,&LevelSelect);
printf(레벨 %d 를 고르셨습니다.! \n게임을 시작합니다.,LevelSelect); //레벨 지정
return 0;
}
저번에 어떤분 말씀듣고 goto문 이용해봤는데요
goto문중 레이블One을 잘보시면
레벨%d를 클리어하셨습니다,LevelSelect);
문장을 보실수있는데요
여기서 쓰레기값이 지정됩니다 ㅠㅠ
제가 하고싶은것은 scanf에서 입력된 Level을 클리어했다고 띄울라고그랬는데 실패했습니다
C언어 1주반차인 초보자 새내기좀 도와주시면 감사하겠습니다.