看一下这哪里错了,帮着改一下
#include<stdio.h> // stdio.h 头文件是系统自带,用尖括号,不用引号
#include<conio.h> // getch() 需要这个头文件
void main()
{
int total = 21;
int shengyu,yours,computer;
char another;
printf("****************************************\n");
printf("***** 起始牙签个数为%d *****\n",total);
printf("***** 每次只能拿走1-3个 *****\n");
printf("***** 谁拿最后一个谁就输了 *****\n");
printf("\n");
printf("\n明白了?按任意键开始吧......");
getch(); // 没有添加头函数 conio.h
shengyu = total;
while(shengyu != 0)
{
do //只能拿1-3个
{
printf("\n当前牙签数为%d\n",shengyu);
printf("请输入你拿走的牙签数(1-3): ");
scanf("%d",&yours);
if(yours >= 1 && yours <= 3)
break;
else
printf("你每次只能拿1到3个。\n");
}while(1);
shengyu = shengyu - yours;
if(shengyu < 0)
{
printf("\n\n你不按规则来呀! \n");
shengyu = shengyu + yours;
continue;
}
if(shengyu == 0)
{
printf("你输了,再来不? (Y/N)");
//清缓冲区
fflush(stdin);
another = getchar();
if(another =='Y' || another == 'y')
{
shengyu = total;
}
else
{
printf("\n\n再见,以后再来玩呀!\n");
break;
}
}
else
{
computer = 4 - yours;
printf("\n电脑拿走了%d个牙签\n",computer);
shengyu = shengyu - computer;
}
}
} 南城转暖 发表于 2020-10-10 19:08
无法运行
你用什么编译器?我用 VC++6.0 运行没有告警,运行正常;用 DEV_C++ 有一个告警: implicit declaration of function 'getch' [-Wimplicit-function-declaration] ,但也不影响运行,游戏能正常玩。
只是你这个游戏可能有问题,我玩了一下午了,就没有赢过 你这个还有什么问题? 风过无痕1989 发表于 2020-10-10 19:03
你这个还有什么问题?
无法运行
这个C语言里void main()是不存在的,应该改为int main(void) void main()在C语言中其实是不正确的,应该改为int mian(void) 本帖最后由 baige 于 2020-10-10 19:22 编辑
#include<stdio.h> // stdio.h 头文件是系统自带,用尖括号,不用引号
#include<conio.h> // getch() 需要这个头文件
int main(void)
{
int total = 21;
int shengyu, yours, computer;
char another;
printf("****************************************\n");
printf("***** 起始牙签个数为%d *****\n", total);
printf("***** 每次只能拿走1-3个 *****\n");
printf("***** 谁拿最后一个谁就输了 *****\n");
printf("\n");
printf("\n明白了?按任意键开始吧......");
getch(); // 没有添加头函数 conio.h
shengyu = total;
while (shengyu != 0)
{
do //只能拿1-3个
{
printf("\n当前牙签数为%d\n", shengyu);
printf("请输入你拿走的牙签数(1-3): ");
scanf("%d", &yours);
if (yours >= 1 && yours <= 3)
break;
else
printf("你每次只能拿1到3个。\n");
} while (1);
shengyu = shengyu - yours;
if (shengyu < 0)
{
printf("\n\n你不按规则来呀! \n");
shengyu = shengyu + yours;
continue;
}
if (shengyu == 0)
{
printf("你输了,再来不? (Y/N)");
fflush(stdin);
another = getchar();
if (another == 'Y' || another == 'y')
{
shengyu = total;
}
else
{
printf("\n\n再见,以后再来玩呀!\n");
break;
}
}
else
{
computer = 4 - yours;
printf("\n电脑拿走了%d个牙签\n",computer);
shengyu = shengyu - computer;
}
}
return 0;
} 来呀,送渔币了
风过无痕1989 发表于 2020-10-10 19:22
你用什么编译器?我用 VC++6.0 运行没有告警,运行正常;用 DEV_C++ 有一个告警: implicit dec ...
没有赢因为这个游戏电脑必胜{:10_250:} 风过无痕1989 发表于 2020-10-10 19:22
你用什么编译器?我用 VC++6.0 运行没有告警,运行正常;用 DEV_C++ 有一个告警: implicit dec ...
哈哈
KevinHu 发表于 2020-10-10 19:32
没有赢因为这个游戏电脑必胜
所以,这一个下午,我都在研究,想改一改
页:
[1]