현재 C에서 간단한 Rock, Paper, Scissors 프로그램을 작성하려고합니다. 할당의 전체적인 포인트는 문자 사용에 익숙한 것입니다. 현재 가지고있는 코드는 다음과 같습니다. 내가 붙어있는 것처럼 그것은 불완전하다. 내가 손해를보고있어 ....함수가 올바르게 char을 반환하지 않음 : 컴파일 중 오류
RPS.c:35:6: error: conflicting types for ‘computerPlay’
RPS.c:28:14: note: previous implicit declaration of ‘computerPlay’ was here
그것은이 잘 작동해야 나에게 보인다
#include <stdio.h>
int main()
{
int pScore = 0;
int cScore = 0;
int ties = 0;
char play, go;
char comp = 'r';
printf("Welcome to Rock-Paper-Scissors!\n");
printScore(pScore, cScore, ties);
for (; ;)
{
printf("Do you want to play Rock-Paper-Scissors? (y/n): ");
scanf("\n%c", &go);
if(go == 'y' || go == 'Y')
{
printf("Enter your choice (r,p,s): ");
scanf("\n%c", &play);
comp = computerPlay();
printf("Computer plays: %c", comp);
}
else
break;
}
printf("\nThanks for Playing!!\n\n");
}
char computerPlay()
{
int r = rand() % 3;
char c;
if (r == 0)
{
c = 'r';
}
else if (r == 1)
{
c = 'p';
}
else if (r == 2)
{
c = 's';
}
return c;
}
int printScore(int p, int c, int t)
{
printf("\nHuman Wins: %d Computer Wins: %d Ties: %d\n\n", p, c, t);
return 0;
}
컴파일러는 나에게 다음과 같은 오류를주고있다 .
ㅎ 'char computerPlay() {return "rpc"[rand() % 3]; }'sry. 저항 할 수 없었다. – WhozCraig