C++ 如果用户对C++;
注:这是家庭作业 我正在尝试做一个程序,玩游戏猪!猪是一种有以下规则的游戏:C++ 如果用户对C++;,c++,C++,注:这是家庭作业 我正在尝试做一个程序,玩游戏猪!猪是一种有以下规则的游戏: 1。第一个得到100分的是胜利者。 2.轮到你时,你掷骰子。如果你在任何一次掷骰中得到1,你结束你的回合,并在你的游戏分数上加0。 3.如果您滚动除1以外的任何值,您可以选择保持或播放。如果您玩,您的掷骰将添加到您的回合分数中,然后您再次掷骰。如果您按住,您的回合分数将添加到游戏分数中,回合将传递到计算机。 游戏非常容易进行,直到我遇到以下问题(请参见代码): int播放器(){ char playreach='Y';
1。第一个得到100分的是胜利者。
2.轮到你时,你掷骰子。如果你在任何一次掷骰中得到1,你结束你的回合,并在你的游戏分数上加0。
3.如果您滚动除1以外的任何值,您可以选择保持或播放。如果您玩,您的掷骰将添加到您的回合分数中,然后您再次掷骰。如果您按住,您的回合分数将添加到游戏分数中,回合将传递到计算机。
游戏非常容易进行,直到我遇到以下问题(请参见代码):
int播放器(){
char playreach='Y';
int turn_得分=0;
while(再次播放!=“N”|再次播放!=“N”){
整数骰子;
srand(时间(空));
骰子=兰德()%6+1;
回合分数=回合分数+骰子;
如果(骰子!=1){
cout与其更正代码,不如让您清楚地了解这里实际需要什么
听说过break;
语句吗?让我们用一个简单的例子来理解
请参阅下面的代码段,其中您的程序正在从用户处获取输入,它会一直从用户处获取输入,直到您按下“A”
char var;
while(true)
{
cin>>var;
if(var=='A') break;
}
现在在这个程序中,while循环被设置为true
,将继续运行并从用户那里获取输入,if语句在用户输入“A”之前不会运行。当“A”作为输入时,break
将为您从while
循环中取出控件。让您的“retur”如何循环中的n'语句(根据具体情况使用适当的值)?这将中断循环和函数,但会返回所需的值。您可以使用中断
退出循环。既然您说要返回“正确的值”,那么您应该这样做:
关于第一个if子句
if (PlayAgain == 'N' || PlayAgain == 'n'){
/**Game-Specific logic here**/
return turn_score
}
关于第二个问题:
if (dice == 1){
cout << endl << "Oops! You rolled a 1! Your turn is ended, and you add nothing to your score.\n";
/**Game-Specific logic here**/
cin.get();
return turn_score;
}
if(骰子==1){
当条件满足时,不能使用break
语句。@Zaphod不允许我根据中的情况返回值,而,是吗?如果不允许,则break不能达到我需要的效果。请自己更努力地尝试:-@Ryan_W4588-break
将使您脱离循环,而不是函数,您可以返回在循环之后。@Ryan_W4588。如果条件满足,您可以从循环中中断
,并返回
需要返回的内容,或者在条件满足时直接返回
,而不是使用中断
。这很有意义,我想返回
是不可能的在循环中。那么,返回是否立即结束函数?是的,但请记住,您也可以使用break停止循环。有时您希望在不结束函数的情况下结束循环
if (dice == 1){
cout << endl << "Oops! You rolled a 1! Your turn is ended, and you add nothing to your score.\n";
/**Game-Specific logic here**/
cin.get();
return turn_score;
}