网站忧化工作怎么样,wordpress 打开慢方法,手机开发者选项在哪里找,电商产品推广方案范文目录
1.规则
2.准备
3.游戏代码 1.规则
1.程序生成1-100间的随机数
2.用户猜数字
猜对了#xff1a;游戏结束
猜错了#xff1a;程序会告知猜大了或猜小了#xff0c;继续进行游戏#xff0c;直到猜对
3.游戏可以一直玩除非退出游戏
2.准备
1.框架#xff1a;循…目录
1.规则
2.准备
3.游戏代码 1.规则
1.程序生成1-100间的随机数
2.用户猜数字
猜对了游戏结束
猜错了程序会告知猜大了或猜小了继续进行游戏直到猜对
3.游戏可以一直玩除非退出游戏
2.准备
1.框架循环结构do while 先循环游戏进入主界面后判断进行或退出
2.生成随机数
#include stdio.h
#include stdlib.h
int main()
{int random rand() % 101; // 生成1-100之间的随机数(%101,余数是1-100)printf(%d\n, random);return 0;
}
每次运行结果都是一样的 rand函数会返回一个伪随机数这个随机数的范围是在0~RAND_MAX之间这个RAND_MAX的大小是依赖编译器上实现的但是大部分编译器上是32767,因此要配合time函数才能实现真随机数真正的随机数的是无法预测下一个值是多少的
rand函数是对一个叫“种子”的基准值进行运算生成的随机数之所以前面每次运行程序产生的随机数序列是一样的那是因为rand函数生成随机数的默认种子是1如果要生成不同的随机数就要让种子是变化的
--用srand来设置种子
#include stdio.h
#include stdlib.h
int main()
{srand(2);int random rand() % 101; // 生成1-100之间的随机数(%101,余数是1-100)printf(%d\n, random);return 0;
} 数字3发生变化但是每次运行结果都是一样的
必须让srand()内的数字发生变化才能实现真随机数
--时间戳_百度百科时间戳在不断变化
time 函数就可以获得这个时间基于系统维护的内部时钟来计算的返回值的是1970年1月1日0时0分0秒到现在程序运行时间之间的 差值单位是秒类型是time_t本质上其实就是32位或者64位的整型类型使用前写#include time.h
time函数原型如下
time_t time (time_t* timer);
这里不需要指针类型写成time(NULL);(空指针)即可
但写成srand(time(NULL));会有问题
void srand (1 unsigned int seed);
srand的返回值是unsigned int,time的返回值是time_t,这里要强制类型转换
srand((unsigned int)time(NULL)); #include stdio.h
#include stdlib.h
#include time.h
int main()
{// 设置随机数生成器设置随机数的起点//设置随机种子time时间戳将时间转化为数字srand();填入不同数字生成的随机数不同srand((unsigned int)time(NULL));int random rand() % 101; // 生成1-100之间的随机数(%101,余数是1-100)printf(%d\n, random);return 0;
}
3.游戏代码
#define _CRT_SECURE_NO_WARNINGS
#include stdio.h
#include time.h
void menu()//主菜单函数
{printf(**********************************************\n);printf(*******************1.PLAY********************\n);printf(*******************2.EXIT*********************\n);printf(**********************************************\n);printf(请选择\n);
}
void game()//游戏函数
{printf(请猜数\n);srand((unsigned int)time(NULL));int random rand() % 101;//写成rand()%1001也可以//printf(%d\n, random);//作弊模式:)int guess 0;while (guess ! random){scanf(%d, guess);if (guess random)printf(猜大了\n);else if (guess random)printf(猜小了\n);else{printf(猜对了\n);}}
}
int main()
{int tmp 0;do{menu();//调用菜单函数scanf(%d, tmp);switch (tmp){case 2:break;default:{printf(输入错误重新选择\n);break;}case 1:{game();break;}}} while (tmp ! 2);
}
补充如果要生成a~b间的随机数ab
random rand() % (a1);
上方生成的是0~a的随机数
略作修改0a~b-aa
randoma rand()%(b-a1)