C语言中如何生成1~100的随机数(附代码)
互联网
20-6-29

在C语言中是如何生成1~100的随机数的呢?想必大家都想了解一下吧,那么话不多说,跟着小编一起了解一下吧。
C语言如何生成随机数
生成10个1~100的随机数
废话不多说直接上程序。
#include<stdio.h>#include<stdlib.h>#include<time.h> int main() {int ret = 0; srand((unsigned int)time(NULL));for(int i=0; i<10; i++) { ret = rand()%100;printf("%d ",ret); }return 0; }
这个程序是用来生成10个随机的数。接下来会详细说一说这个程序的构成。
随机数生成代码的分析
以上程序的关键代码是:
srand = ((unsigned)time(NULL)); ret = rand()%100;
rand()函数所需头文件是
#include<stdlib.h>
rand()是生成伪随机数的函数,它会按照一定的序列来生成随机数,但是它序列是固定的:

程序每次执行它都将按照这个序列来给出随机数,所以在对rand()不加限制条件的话,生成的随机数不够随机。
time()函数所需要头的头文件是:
#include<time.h>
srand()函数所需要的头文件是:
#include<stdlib.h>
注意:
ret = rand()%100;
rand()%100是为了产生100以内的随机数。
有趣的小程序
这是一个电脑自己猜数字的小程序。
#include<stdio.h>#include<time.h>#include<process.h>#include<stdlib.h>#include<Windows.h>int main() { int ret = 0; int guess = 0; int left = 0; int right = 100; srand((unsigned int)time(NULL)); ret = rand() % 100; printf("提供的答案数是->%d\n",ret); guess = 50; while (1) { if (guess > ret) { printf("猜大了->%d\n", guess); right = guess; guess = (right + left) / 2; Sleep(1000); } else if (guess < ret) { printf("猜小了->%d\n", guess); left = guess; guess = (right + left) / 2; Sleep(1000); } if (guess == ret) { printf("猜到了是%d", guess); break; } } system("pause "); return 0; }
谢谢您的阅读
本文转自:https://blog.csdn.net/H_Strong/article/details/79678269
推荐教程:《C语言》
以上就是C语言中如何生成1~100的随机数(附代码)的详细内容,更多内容请关注技术你好其它相关文章!
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场