rand mit Samen nicht wieder random wenn-Funktion geloopt

Schrieb ich diesen C-code unten, wenn ich Schleife, es gibt eine zufällige Zahl. Wie kann ich erreichen, das 5 verschiedene zufällige Werte wenn myrand() ausgeführt wird?

#include <stdio.h>
#include <stdlib.h>

int myrand() {
    int ue_imsi;
    int seed = time(NULL);
    srand(seed);
    ue_imsi = rand();

    return ue_imsi;
}

int main()
{
    int value = 0;
    int i=0;
    for (i=0; i< 5; i++)
    {
        value =myrand();
        printf("value is %d\n", value);
    }
}
  • Seed einmal in Ihrem Leben, nicht die ganze Zeit.
  • Sie initialisiert den Zufallszahlen-generator mit der gleichen Nummer immer und immer wieder (solange time(NULL) denselben Wert zurück). Tun Sie das nicht wenn Sie wollen, die zahlen zu schauen, wie zufällig. Denken Sie auch an #include <time.h> für time() Prototyp.
  • mögliche Duplikate von Immer wiederholt angegebenen zahlen von rand(). Bitte verwenden Sie die Suchfunktionen SO, bevor Sie eine Frage stellen.
InformationsquelleAutor xambo | 2011-11-29
Schreibe einen Kommentar