马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
任务描述
本关任务(习题5.1):模拟掷双骰子游戏,游戏规则:每轮投两次骰子,取两次的和,第一轮若和为7或11则获胜,游戏结束。
例一:
和为11,则显示:'Round 1: Score:11 Success!'
若和为2、3或12则输了,失败结束,
例二:
和为12,则显示:'Round 1: Score:12 Failed!'
若和为其他数字,则将第一轮两次骰子点数的和(假定为8)作为自己的点数,继续第二轮,第三轮,……,直到某轮两次骰子点数的和等于该点数(第一轮两次投掷点数和)则获胜,若中间某轮两次投掷骰子点数的和为7,则输掉游戏。对应显示:
'Round 1: Score:8 Continue!'
'Next rounds: Score 8:Success, Score 7:Failed, others:Continue'
'Round 2: Score:4 Continue!'
'Round 3: Score:6 Continue!'
'Round 4: Score:9 Continue!'
'Round 5: Score:7 Failed!'
相关知识
为了完成本关任务,你需要掌握:
C语言函数定义与调用;
C语言函数参数传递与返回;
C语言生成指定范围的随机数。
编程要求
在右侧编辑器完成diceGame(int randSeed)函数,其中参数randSeed为随机数种子,为方便测试,种子在测试文件中由键盘输入。
测试说明
平台会对你编写的代码进行测试,由于rand()函数返回的随机数在windows和Linux(平台环境)下的值不同,为方便同学们测试,分别给出两种环境的测试结果:
Linux环境
测试输入:1 //随机数种子:用于初始化随机数生成器
预期输出:Round 1: Score:7 Success!
测试输入:18
预期输出:
'Round 1: Score:8 Continue!'
'Next rounds: Score 8:Success, Score 7:Failed, others:Continue'
'Round 2: Score:4 Continue!'
'Round 3: Score:6 Continue!'
'Round 4: Score:9 Continue!'
'Round 5: Score:7 Failed!'
windows环境
测试输入:100 //随机数种子:用于初始化随机数生成器
预期输出:Round 1: Score:11 Success!
测试输入:10
预期输出:
'Round 1: Score:10 Continue!'
'Next rounds: Score 10:Success, Score 7:Failed, others:Continue'
'Round 2: Score:6 Continue!'
'Round 3: Score:9 Continue!'
'Round 4: Score:4 Continue!'
'Round 5: Score:7 Failed!'
我的代码如下:(任务只要求定义函数,不用写main的部分)/***在下面Begin至End间,按原型 void diceGame(int randSeed) 定义函数***/
/********** Begin **********/
void diceGame(int randSeed)
{
int x,y,z,i;
x=rand();
x=x%6+1;
y=rand();
y=y%6+1;
z=x+y;
if(z==7||z==11) printf("Round 1: Score:%d Success!",z);
else if(z==2||z==3||z==12) printf("Round 1: Score:%d Failed!",z);
else
{
printf("Round 1: Score:%d Continue!\n",z);
printf("Next rounds: Score %d:Success, Score 7:Failed, others:Continue",z);
int a,b,c;
for(i=1;i<10;i++)
{ a=rand();
a=a%6+1;
b=rand();
b=b%6+1;
c=a+b;
if(c!=z&&c!=7) printf("Round %d: Score:%d Continue!",i,c);
else if(c==7) printf("Round %d: Score:7 Failed!");
}
}
}
/********** End **********/
请求:
1、现在问题在于,不论怎么运行,结果只会输出:Round 1: Score:7 Success!
请修改我的代码,使它符合题目要求。(不要提供新的代码,否则不予采纳,谢谢)
2、定义的int randSeed 有什么用呢? |