Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Por que não usar direto o número de segundos?

Minha dúvida é por que ao invés de fazer

    int tempo = time(0);
    srand(tempo);
    int numero_aleatorio = rand()%100;

não fazemos

    int tempo = time(0);
    int numero_aleatorio = tempo%100;
1 resposta
solução!

Opa, tudo bom?

Cara, montei um exemplo pra ti dar uma testadinha, logo em seguida a explicação.

Para alternar, basta comentar a função atual e descomentar a outra.

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

void TempoSemSrand();
void TempoComSrand();

int main (void){
    setlocale(LC_ALL, "Portuguese");

    TempoSemSrand();
    //TempoComSrand();

}

void TempoSemSrand(){
    int tempo = time(0);

    while (tempo > 0){
        printf ("\n\n O tempo é %d\n", tempo);
        printf ("%d\n\n", tempo%100);
        getch();
    }    
}

void TempoComSrand(){
    int tempo = time(0);
    srand(tempo);

    while(tempo > 0){
        printf ("\n\n O tempo É %d\n", tempo);
        printf ("%d\n\n", rand()%100);
        getch();                
    }
}

Então, vou explicar um pouco do teu próprio código postado:

A primeira variável declarada que recebe um time(0) vai servir simplesmente para capturar o tempo atual e alimentar o Srand().

O Srand, recebe como parâmetro um inteiro, que é o intervalo de números que ele poderá gerar a sequência. Uma vez usado o Srand, ele não deixa que os números do Rand se repitam(sequêncialmente).

Por fim, o Rand%100 que seria um NumeroAleatório(dentro da faixa passada) % 100 limita o valor máximo produzido. Ou seja, o NumeroAleatório%100 poderá chegar no máximo até 100.