
c++掷骰子的问题,新手求教,问题很简单但卡住了
http://tieba.baidu.com/p/2132913048问题在这有点长麻烦帮看一下...
http://tieba.baidu.com/p/2132913048
问题在这 有点长 麻烦帮看一下 展开
问题在这 有点长 麻烦帮看一下 展开
2个回答
展开全部
跟rand()函数没关系,score没清0,while前加一句score = 0;就可以了
展开全部
srand函数是随机数发生器的初始化函数。
原型:void srand(unsigned seed);
用法:它需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子后面的rand()函数会出现一样的随机数你那种子全是1000,结果当然不会变
原型:void srand(unsigned seed);
用法:它需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子后面的rand()函数会出现一样的随机数你那种子全是1000,结果当然不会变
追问
不是这个意思 规定必须要是srand(1000) 我们这是作业所以规定seed之后就有固定答案,就可以打分了。我的问题就是在for循环执行时候,dice第一轮的值分别是523452,可第二轮再执行for的时候还是523452,导致结果永远是21(5+2+3+4+5+2)。其实就算我把srand(time(NULL))也还是一样,可能这轮是356224,但永远是356224。结果永远是22。用time(NULL)不同之处是第二次运行这个数组会变。我是这个意思,不知您能否看懂
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询