Realizziamo un programma che generi i numeri random in un file in C.
Utilizziamo a questo scopo semplicemente le funzioni fopen, fclose e fprintf precedentemente studiate. Di seguito il problema da risolvere:
Scrivere un programma in C che produca un file di testo contente 10 numeri random, generati con la funzione di libreria rand, uno per ciascuna riga.
Quindi apriamo in scrittura il file di testo random.txt utilizzando la funzione fopen e controlliamo che il puntatore non restituisca il valore NULL. Se lo restituisce allora facciamo apparire un messaggio d’errore ed usciamo dal programma.
Dopo, con un ciclo for generiamo dei numeri casuali usando la funzione rand() e li scriviamo sul file di testo random.txt utilizzando la funzione fprintf.
Infine chiudiamo il file utilizzando la funzione fclose.
Ecco dunque il listato completo:
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
#define N 5
int main() {
FILE *fp;
int i,numero;
srand(time(0));
if((fp=fopen("random.txt", "wt"))==NULL) {
printf("Errore nell'apertura del file");
exit(1);
}
for(i=0;i<10;i++){
numero=1+rand()%10;
fprintf(fp,"%d\n", numero);
}
fclose(fp);
return 0;
}
Questo semplice esempio per generare dei numeri random in un file è stato proposto per rafforzare quanto studiato finora.
Alcuni link utili
Allocazione dinamica della memoria con malloc
Esercitazione sulle struct in C
Realizzare un menù di scelta in C
Altro esempio sulle struct in C
Somma elementi diagonale principale di una matrice
Come sommare gli elementi della cornice esterna
Sommare dei numeri di una matrice
Ricerca elementi in una matrice