Maison > développement back-end > Tutoriel C#.Net > Comment générer des nombres aléatoires de 1 à 100 en langage C (avec code)

Comment générer des nombres aléatoires de 1 à 100 en langage C (avec code)

烟雨青岚
Libérer: 2020-06-29 11:32:06
original
54724 Les gens l'ont consulté

Comment générer des nombres aléatoires de 1 à 100 en langage C (avec code)

Comment générer des nombres aléatoires de 1 à 100 en langage C ? Je pense que tout le monde veut le savoir, alors sans plus tarder, découvrons-le avec l'éditeur.

Comment générer des nombres aléatoires en langage C

Générer 10 nombres aléatoires allant de 1 à 100

Sans plus tard, passons directement au sujet programme.

#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="Comment générer des nombres aléatoires de 1 à 100 en langage C (avec code)"></p>
<p>Ce programme est utilisé pour générer 10 nombres aléatoires. Ensuite, nous parlerons en détail de la structure de ce programme. </p>
<p><strong>Analyse du code de génération de nombres aléatoires</strong></p>
<p><strong>Le code clé du programme ci-dessus est : </strong></p>
<pre class="brush:php;toolbar:false"> srand = ((unsigned)time(NULL));
 ret = rand()%100;
Copier après la connexion

rand () Le fichier d'en-tête requis par la fonction est

#include<stdlib.h></stdlib.h>
Copier après la connexion
Copier après la connexion

rand() est une fonction qui génère des nombres pseudo-aléatoires Elle génère des nombres aléatoires selon une certaine séquence, mais. sa séquence est fixe. :

Comment générer des nombres aléatoires de 1 à 100 en langage C (avec code)

Chaque fois que le programme sera exécuté, il donnera des nombres aléatoires selon cette séquence, donc s'il n'y a aucune restriction sur rand(), le les nombres aléatoires générés ne seront pas assez aléatoires.

Le fichier d'en-tête requis par la fonction time() est :

#include<time.h></time.h>
Copier après la connexion

fonction time() Il convient de noter le paramètre formel de la fonction time. Le paramètre est Les variables de pointeur sont généralement écrites sous la forme time(NULL).
La fonction de cette fonction est de renvoyer l'heure de 00:00:00 le 1er janvier 1970 à l'heure à laquelle vous l'avez exécutée pour la première fois sur l'ordinateur (par exemple : 14:14:00 le 24 mars 2018). Ce nombre est aléatoire et change au fur et à mesure que votre ordinateur fonctionne.

Le fichier d'en-tête requis par la fonction srand() est :

#include<stdlib.h></stdlib.h>
Copier après la connexion
Copier après la connexion

la fonction srand() est une graine de générateur de nombres pseudo-aléatoires, qui donne le rand() fonction un point de départ. Lorsque vous utilisez la fonction rand() seule, elle prend 1 comme paramètre par défaut. Le paramètre formel de srand() est un type non signé, c'est-à-dire un type non signé, qui peut être int, float, char, etc.
Mais afin d'obtenir ici l'effet de nombre aléatoire, la fonction time() sera utilisée pour générer un point de départ, qui agit directement sur la fonction rand().

Remarque :

   ret = rand()%100;
Copier après la connexion

rand()%100 consiste à générer un nombre aléatoire compris entre 100.

Petit programme intéressant

C'est un petit programme permettant à l'ordinateur de deviner les nombres par lui-même.

#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>
Copier après la connexion

Comment générer des nombres aléatoires de 1 à 100 en langage C (avec code)

L'idée de dichotomie est utilisée ici, permettant à l'ordinateur de deviner un nombre inférieur à 100.
La fonction Sleep() est utilisée pour retarder le temps d'impression. L'unité du paramètre de la fonction Sleep() est ms, donc 1000ms=1s.

Merci d'avoir lu

Cet article est reproduit à partir de : https://blog.csdn.net/H_Strong/article/details/79678269

Tutoriel recommandé : "Langage C

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal