我是C新手,在C语言中找到1个论坛来结束一个while循环,并且那个人没有真正的帮助,因为它仍然不起作用。它给了我一个“期待;休息之前”或“int keep_playing = 4”来结束循环。这是一个简单的摇滚纸剪刀游戏,我只是在循环上工作,很快就会担心逻辑部分。这是我的代码。用C语言编程,结束一个while循环
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
printf("Welcome to rock paper scissors!\n");
int keep_playing=5;
while (keep_playing==5)
printf("Press 'y' to play or 'n' to quit: ");
char playornot;
scanf("%c\n",&playornot);
if (playornot=='y')
printf("Ok.\n");
else (playornot=='y')
int keep_playing=4;
return 0;
}
你缺乏大括号使阅读真的很痛苦。虽然没有大括号的循环只考虑循环声明后的第一个语句,除非你使用逗号(请不要使用常规)。由于缩进是误导性的,因此很难说出你的意图是什么。按照规定,你的程序应该用“printf(”按'y'播放或'n'退出:“);”;因为这是循环看到的唯一声明。 – Dmitry
可能重复[我如何根据用户输入退出一段时间(1)](http://stackoverflow.com/questions/38913603/how-can-i-exit-a-while1-based-on-一个用户输入) – xenteros
你可以使用“break”来结束一个while循环而不是改变一个变量的值 –