PDA

Visualizza la versione completa : [C] Acquisizione valori in formato scientifico da file


aletrc
23-08-2011, 20:40
Salve, ho bisogno di acquisire da un file dei valori cosė fatti:

1.035907141864e-008 2.503096342087e+000 2.498013496399e+000
1.107721425593e-008 2.503096342087e+000 2.498013496399e+000
1.251349993050e-008 2.503096342087e+000 2.498013496399e+000
1.538607127964e-008 2.503096342087e+000 2.498013257980e+000

come faccio a far riconoscere al c tali valori?
non so se sono visti come stringa oppure come numero (float o altro).
in ogno caso č possibile convertirli in float o double mantenendo quello stesso
numero di cifre? mi dareste dei suggerimenti su come fare?
un altra cosa
per far stampare un valore usando quella norazione occorre usare qualche funzione ?
grazie

MItaly
23-08-2011, 20:43
La scanf con formato "%le" dovrebbe accettarli, caricandoli in variabili double.
Analogamente per scriverli userai la printf con formato "%e" (probabilmente leggermente modificato per visualizzare tutte quelle cifre decimali, dai un'occhiata alla documentazione di printf per vedere come fare).
---EDIT---
Per scriverli, la stringa di formato dovrebbe essere "%.12e"; purtroppo non c'č modo con la sola printf di dirgli di usare tre cifre per l'esponente, ne vengono usate solo due.

Loading