Kli*_*tel 1 c++ arrays loops visual-c++
这是一个我试图编写的简单游戏,然而,它并不像预期的那样高效......这是我的目标.阵列无法正常工作,整体逻辑不完整.我们的目标是:如果骰子上的第一辊的总和为2,3,或12,你告诉他/她失去了球员; 如果总和是7或11,你告诉玩家他/她赢了; 如果第一次掷骰是任何其他数字(4,5,6,8,9,10),则告诉玩家他/她必须再次滚动.现在扩展该程序如下 - 如果玩家被告知在第一次滚动后再次滚动(如果它是4,5,6,8,9,10),保存该数字,称之为"点".现在继续滚动,直到发生两件事之一 - 如果玩家在再次滚动"点数"之前滚动7,则玩家输掉并且转弯结束; 如果玩家在7滚动之前匹配"该点",则玩家获胜并且转弯结束.如果除了7或"点"之外的任何数字都没有发生任何事情并且玩家只是继续滚动.告诉玩家他们是赢还是输,每次掷骰的结果,以及获得结果需要多少卷.
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
int die1,
die2,
sum,
point,
rollChoice;
static int rollCount;
int *rolls = new int[];
rollCount=1;
point=0;
srand(time(0));
cout<<"Enter 1 to roll: ";
cin>>rollChoice;
if(rollChoice==1)
{
for (int i=0; i<INT_MAX; i++)
{
die1=rand()%10;
die2=rand()%10;
sum=die1+die2;
rolls[sum];
if(rolls[i] == 2 || rolls[i] == 3 || rolls[i] == 12)
{
cout<<"\nYou have lost!"<<endl;
rollCount++;
cout<<"\n";
cin>>rollChoice;
}
else if(rolls[i] == 7 || rolls[i] == 11)
{
cout<<"\nYou have won!"<<endl;
rollCount++;
cout<<"\n";
cin>>rollChoice;
}
else if(rolls[i] == 4 || rolls[i] == 5 || rolls[i] == 6 || rolls[i] == 8 || rolls[i] == 9 || rolls[i] == 10)
{
cout<<"\nYou have lost, roll again.";
point=rolls[i];
cout<<"\n";
cin>>rollChoice;
rollCount++;
if(rollCount==7)
{
for(int i=0; i<7; i++)
{
cout<<"\nRoll "<<i<<". "<<rolls[i];
}
}
}
}
}
cin.get();
cin.get();
return 0;
}
Run Code Online (Sandbox Code Playgroud)

rolls
是一个没有大小的数组,但你试图在其中粘贴东西.for (int i=0; i<INT_MAX; i++)
?rolls[sum]
?这是一个NoOPi
使用i
令人震惊的做法重新定义循环内部.我建议你挖掘你的C/C++书籍并重温一些基础知识,然后在遇到问题时提出一些具体的问题!
归档时间: |
|
查看次数: |
548 次 |
最近记录: |