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

    creare programma per c

    Ciao a tutti, sto cercando di imparare a usare c tramite i manuali.
    Ho provato in tutti i modi a scrivere un programma che mi conti quante righe ha un documento ma non riesco, c'e' qualcuno di voi che potrebbe aiutarmi? magari faccio un'errore stupidissimo ma sono 3 giorni che ci provo senza risultati. grazie a tutti

    Ho provato a contare ma non riesco come posso scriverlo?
    io inizio
    # include <stdio.h>
    main ()
    do ++k; while(getchar()!='=');
    cosi escludo la prima riga ma dopo?
    qui mi blocco e non so andare avanti

    grazie, per cambiare il titolo ci provo, vado su modifica messaggio ma non trovo niente.

  2. #2
    Allora per contare le righe di un file devi seguire 4 passi:
    - cambiare titolo alla discussione (mettendone uno decente)
    - aprire il file
    - contare tutti gli \n
    - chiudere il file
    Experience is what you get when you don’t get what you want

  3. #3
    A parte scherzi.
    Cambia il titolo alla discussione, come da regolamento, altrimenti te la chiudono.
    Per contare le linee di un file ti basta contare gli \n presenti nel file (magari con buffer char).
    Sono un po' arrugginito con il c, ma una cosa simile dovrebbe funzionare:
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    
    int contaRighe (FILE *fp);
    
    main ()
    {
    	FILE *file;
    	file = fopen("file.formato.da.tante.righe","r");
    	if (file == NULL)
    		printf ("Nessun file \n");
    	int risultato = contaRighe (file);
    	fclose (file);
    	printf ("Numero di righe: %i \n", &risultato);
    	system ("pause");
    	return 0;
    }
    
    int contaRighe (FILE *fp)
    {
    	int i = 0;
    	char buffer;
    	while (true)
    		{
            fread ((void *)&buffer,sizeof(char),1,fp);
    		if (feof(fp))
    			break;
    		if (buffer == '\n')
    			i++;
    		}
    	return i;
    }
    Oppure potresti leggere il file riga per riga con una getline e contare il numero di letture.
    Experience is what you get when you don’t get what you want

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Moderazione

    Cerchiamo di utilizzare dei titoli con un po' di buon senso...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.