|
发表于 2016-8-13 11:35:08
|
显示全部楼层
本帖最后由 无符号整形 于 2016-8-14 10:07 编辑
随机数版本,可以生成0-100的随机数,随机数公式:
设要生成的随机数为0-50
则Max = 50,Min = 0
那么随机数可以这样求
- srand((unsigned int)time(NULL));//设置随机数种子
- n = rand() % (Max + 1);//生成随机数
复制代码
比如我要生成0-1000的随机数就这样
因为Max = 1000,所以Max + 1 = 1001
- srand((unsigned int)time(NULL));//设置随机数种子
- n = rand() % 1000;//生成随机数
复制代码
同理,如果我要生成0-7500的随机数:
因为Max = 7500,所以Max + 1 = 7501
- srand((unsigned int)time(NULL));//设置随机数种子
- n = rand() % 7501;//生成随机数
复制代码
参考代码:
- #include"stdafx.h"//如果报错删掉这行
- #include<stdio.h>
- #include<time.h>
- int _tmain(int argc, _TCHAR* argv[])
- {
- int a=-1,n=0,m=4,i=0;
- printf("***猜数字游戏***\n");
- printf("**<1>开始游戏**\n");
- printf("**<0>结束游戏**\n请输入:");
- while(m!=1 && m!=0)
- {
- if(i!=0) //是否开始游戏
- printf("输入错误,请重新输入:");
- i++;
- scanf("%d",&m);
- }
- if(m==1)
- {
- printf("游戏开始 \n请输入要猜测的数字:");
- scanf("%d",&n);
- srand((unsigned int)time(NULL)); //设置随机数种子
- n = rand() % 101 //生成0-100的随机数 公式:n = rand() % 要生成的随机数最大值+1
- while(a!=n)
- {
- printf("再次输入要猜测的数字:");
- scanf("%d",&a);
- if(a<n) //判断大小
- printf("太小了\n");
- if(a>n) //判断大小
- printf("太大了\n");
- }
- printf("恭喜猜中了,该数为:%d\n",n);
-
- }
- else
- {
- return 0;
- //游戏结束
- }
- }
复制代码 |
|