Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    643

    [C] Aiutino per semplice esercizio che non viene

    Ciao,
    a laboratorio di programmazione ci č stato dato da fare questo semplice esercizio:
    scrivere un programma che usi la funzione getchar, che legga dei caratteri sulla shell di linux e che conti quanti caratteri, quate parole e quante righe sono state inserite.

    Dove la aprte sul numero dei caratteri funziona ma la parte sulle parole (incrmenta la var parole ogni carattere spazio che viene inserito) e la parte sulle righe (incrementa la variabile righe ogni volta che si preme invio) non funziona..dā 2 warning in fase di compilazione e quando lo vado ad eseguire questi due valori stanno sempre a 0....per favore potete aiutarmi a risolvere...la logica dovrebbe essere giusta...probabilmente sbaglio qualcosa nel contornto nelle due if

    codice:
    #include <stdio.h>
    
    int main(){
    	
    	int caratteri = 0;
    	int parole = 0;
    	int righe = 0;
    	int corrente;
    	
    	corrente = getchar();		// Leggi il primo carattere dalla tastiera
    	
    	while(corrente != EOF){
    	
    		caratteri ++;		// Incrementq il numero di caratteri letti
    		
    		if(corrente == " ")
    			parole ++;	// Ad ogni spazio incrementa il numero delle parole scritte
    
    		if(corrente == "\n")	// Ad ogni invio incrementa il numero di righe
    			righe ++;
    
    		corrente = getchar();	// Leggi un nuovo carattere dalla tastiera
    	}
    
    	printf("\nSono stati letti: %d caratteri dalla tastiera\n", caratteri);
    	printf("\nIl numero di parole corrisponde a: %d\n", parole);
    	printf("\nIl numero di righe corrisponde a: %d\n\n", righe);
    	
    	return 0;
    }
    Grazie
    Andrea

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    devi confrontare corrente con un char, non una stringa
    if(corrente == ' ')
    if(corrente == '\n')

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.