How to generate random numbers from 1 to 100 in C language? I think everyone wants to know about it, so without further ado, let’s learn about it with the editor.
How to generate random numbers in C language
Generate 10 random numbers from 1 to 100
Without further ado, let’s get straight to the program.
#include<stdio.h>#include<stdlib.h>#include<time.h> int main() {int ret = 0; srand((unsigned int)time(NULL));for(int i=0; i<p><img src="https://img.php.cn/upload/image/171/688/281/1593401322583907.png" title="1593401322583907.png" alt="How to generate random numbers from 1 to 100 in C language (with code)"></p> <p>This program is used to generate 10 random numbers. Next, we will talk about the structure of this program in detail. </p> <p><strong>Analysis of random number generation code</strong></p> <p><strong>The key code of the above program is: </strong></p> <pre class="brush:php;toolbar:false"> srand = ((unsigned)time(NULL)); ret = rand()%100;
rand() The header file required for the function is
#include<stdlib.h></stdlib.h>
rand() is a function that generates pseudo-random numbers. It generates random numbers according to a certain sequence, but its sequence is fixed. :
Every time the program is executed, it will give random numbers according to this sequence, so if there are no restrictions on rand(), the random numbers generated will not be random enough. .
The header file required by the time() function is:
#include<time.h></time.h>
time() function. It is worth noting that the formal parameter of the time function is a Pointer variables are usually written as time(NULL).
The function of this function is to return the time from 00:00:00 on January 1, 1970 to the time you first ran it on the computer (for example: 14:14:00 on March 24, 2018). This number is random and changes as your computer runs.
The header file required by the srand() function is:
#include<stdlib.h></stdlib.h>
The srand() function is a pseudo-random number generator seed, which gives the rand() function a generated A starting point. When using the rand() function alone, it takes 1 as the default parameter. The formal parameter of srand() is an unsigned type, that is, unsigned type, which can be int, float, char, etc.
But in order to achieve the random number effect here, the time() function will be used to generate a starting point, which directly acts on the rand() function.
Note:
ret = rand()%100;
rand() 0 is to generate a random number within 100.
Interesting little program
This is a small program for the computer to guess numbers by itself.
#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 %d\n", guess); left = guess; guess = (right + left) / 2; Sleep(1000); } if (guess == ret) { printf("猜到了是%d", guess); break; } } system("pause "); return 0; }</windows.h></stdlib.h></process.h></time.h></stdio.h>
The idea of dichotomy is used here, allowing the computer to guess a number within 100.
The Sleep() function is used to delay the printing time. The parameter unit of the Sleep() function is ms, so 1000ms=1s.
Thank you for reading
This article is reproduced from: https://blog.csdn.net/H_Strong/article/details/79678269
Recommended tutorial: "C language"
The above is the detailed content of How to generate random numbers from 1 to 100 in C language (with code). For more information, please follow other related articles on the PHP Chinese website!