뭐가 잘못된거죠
여자
질문 제목 : 질문 요약 :컴퓨터가 보 일떄 플레이어가 가위이면 컴퓨터 승이되고
플레이어가 보일때 컴퓨터가 가위면 플레이어 승이되버립니다질문 내용 :#includestdio.h
#includestdlib.h
#includewindows.h
#includetime.h
int main()
{
int p,c,game;
int cs,ps;
cs=0;
ps=0;
srand(time(null));
for(;;){
printf(컴퓨터 점수 : %d 플레이 점수 : %d \n,cs,ps);
printf(====================\n가위바위보 게임입니다.\n 1.가위(1) 2.바위(2) 3.보자기(3)\n() 안에 있는 수자를 입력해주세요\n====================\n);
scanf(%d,&p);
switch(p){
case 1:
printf(플레이어는 가위를 내셨습니다\n);
break;
case 2:
printf(플레이어는 바위를 내셨습니다\n);
break;
case 3:
printf(플레이어는 보를 내셨습니다\n);
break;
default :
printf(플레이어는 3가지 숫자 이외를 입력하셨기때문에 컴퓨터에 승리가됩니다\n);
}
c=rand()%3+1;
switch(c){
case 1:
printf(컴퓨터는 가위를 내셨습니다\n);
break;
case 2:
printf(컴퓨터가 바위를 내셨습니다\n);
break;
case 3:
printf(컴퓨터가 보를 내셨습니다\n);
break;
}
if(p==c)
{
printf(비겻습니다\n);
}
else if(p==1,c==2)
{
printf(컴퓨터가 이겼습니다\n);
cs++;
}
else if(p==2,c==1)
{
printf(플레이어가 이겼습니다\n);
ps++;
}
else if(p==2,c==3)
{
printf(컴퓨터가 이겼습니다\n);
cs++;
}
else if(p==3,c==2)
{
printf(플레이어가 이겼습니다\n);
ps++;
}
else if(p==1,c==3)
{
printf(플레이어가 이겼습니다);
ps++;
}
else if(p==3,c==1)
{
printf(컴퓨터가 이겼습니다);
ps++;
}
printf(다시할려면 1번 끝내실려면 2번을 눌르세요(다른걸 입력시 종료합니다)\n);
scanf(%d,&game);
if(game==1)
{
system(cls);
}
else if(game==2)
{
break;
}
else
{ break;
}
}
system(pause);
return 0;
}
플레이거가 보자기를 내고 컴퓨터가 가위를 낼경우 컴퓨터가 이겨버리게됩니다 ㄱ-소스는 잘못된점없는거같은데 말이죠..
-
Glisten
&& 이 and 입니다.
애초에 if문 안에 if( a, b)이런식으로는 사용할 수 없어요 ㅎㅎ
if안에는 참인지 거짓인지 판별할 수 있는 논리식이 들어가야합니다. -
리라
, 대신&& 를 사용하는이유가 모죠?
-
안녕나야
모듈화를 하고싶어지는 소스다.. ㅠㅠ /t가 너무많아서 보기싫음 ㅋㅋㅋ
틀린부분은 답변처럼 , 대신 &&요