[英]Debugging my c program, number guessing game
我需要调试该程序的帮助,但不知道出了什么问题。 我正在使用腻子和Vi编辑器来运行程序。 这是我的代码:
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <malloc.h>
int main(void) {
int playerNumber = 0;
int number = 0;
int playerInput = 0;
int guess = 0;
char input;
char str[6] = {0};
int playerA = 0;
int playerB = 0;
int passA = 3;
int passB = 3;
int i = 0;
int playerTurn = 0;
srand(time(NULL));
playerNumber = 1 + rand() % 2; /* Random number is generated */
printf("\nPlayer %d goes fist\n", playerNumber);
printf("Player Number?\n");
while (playerNumber != playerInput) {
scanf("%d", &playerInput);
if (playerNumber != playerInput) printf("You Have to wait your turn.\nPlayer number?\n");
playerNumber = playerA;
if (playerA = 1) playerB = 2;
else playerB = 1;
srand(time(NULL));
number = 0 + rand() % 100; /* Random number is generated */
printf("Enter Your Guess, 0 - 100 or Pass: "); /* Input your guess */
while(number != guess) {
for(i = 1; i < 1000; i++) {
if (i%2 == 1) playerTurn = playerA;
else PlayerTurn = playerB;
scanf("%s", str);
if (strcmp(str, "pass") == 0) printf("Player Number?\n");
else {
guess = atoi(str);
if(guess < number) /* if the guess is lower, output: the guess is to low */
printf("Your guess was to low.\n Player Number:\n ");
else if(guess > number) /* if the guess is higher, output: the guess is to high */
printf("Your guess was to high.\n Player Number:\n ");
else /* is the guess is equial to the random number: Success!! */
printf("Yes!! you got it!\n");
return 0;
}
}
}
}
}
这就是我得到的错误:project2total.c:在函数main': project2total.c:49: error:
PlayerTurn'未声明(此函数首次使用)project2total.c:49:错误:(报告了每个未声明的标识符仅对project2total.c:49一次:错误:它出现在每个函数中。)
C区分大小写。 在您的函数中,没有声明PlayerTurn
,但是您似乎已经声明了playerTurn
。 假设这实际上是您要引用的变量,只需将大写P校正为小写即可。 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.