Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [C] - fscanf restituisce valori random

    Ciao! Sto scrivendo un programma che, ricevuto in ingresso un valore intero, legge da un file una serie di altri valori e stampa solo quelli strettamente positivi al valore inserito. Il codice che ho scritto è il seguente:
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    
    
    #define L 10
    
    
    int main(int argc, char*argv[]){
    
    
        int val, i, seq[L];
        printf("Inserisci il valore sentinella: ");
        scanf("%d", &val);
        FILE *if_p;
        if_p=fopen("dati-input.dat", "r");
        if(if_p==NULL){
            
            printf("Errore\n");
            exit(-1);
            }
    
    
        else{
    
    
            printf("Inserisci i valori del FILE\n");
            for(i=0; i<L; i++){
            
                fscanf(if_p, "%d", &seq[i]);
                if(seq[i]>val)
                printf("%d", seq[i]);
                }
    
    
            }
        
        fclose(if_p);
        return(0);
        }
    Che non mi da alcun errore in compilazione, ma restituisce valori random senza lasciarmeli inserire nel momento in cui dovrebbe funzionare fscanf. Spero possiate aiutarmi, thx in advance.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Non ho capito il malfunzionamento ... che vuoi dire con "senza lasciarmeli inserire nel momento in cui dovrebbe funzionare fscanf" ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Hai ragione, sono stato poco chiaro.
    Il programma funziona fino a "Inserisci i valori del FILE\n"
    A quel punto, dovrei poter inserire manualmente i valori grazie a fscanf, però subito dopo la printf appare una serie di numeri casuali e il programma termina.

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Quote Originariamente inviata da Mazzi Is Back Visualizza il messaggio
    Hai ragione, sono stato poco chiaro.
    Il programma funziona fino a "Inserisci i valori del FILE\n"
    A quel punto, dovrei poter inserire manualmente i valori grazie a fscanf, però subito dopo la printf appare una serie di numeri casuali e il programma termina.
    Forse qualcosa non ti è chiaro ... la fscanf *legge* i dati dal file che è stato aperto dalla fopen ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Ah! Ero convinto che la funzione di fscanf fosse la stessa di scanf, solo applicata ai file. Grazie!

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Quote Originariamente inviata da Mazzi Is Back Visualizza il messaggio
    Ah! Ero convinto che la funzione di fscanf fosse la stessa di scanf, solo applicata ai file. Grazie!

    Continui a dire stranezze ... È proprio così come credevi. La fscanf è come la scanf ma applicata ai file ... Quindi?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.