-Yara-
28-01-2005, 17:34
Salve a tutti ho un problema con il seguente programma.
Dovrebbe ricevere in input una serie di nomi e date e salvarle su un file..e lo fa..ma i nomi (che sono una matrice di caratteri) non funziona..o meglio funziona ma il nome di posto 0 non vuole farmelo inserire
Qualcuno mi aiuti perchè sto impazzendo e non riesco a capire che cavolo sia
/******************************
** Creare un'agenda in C **
*******************************/
#include <stdio.h>
#include <string.h>
void inserimento(); //prototipo delle
void visualizzazione(); //funzioni
FILE *save;
int main(void)
{
int risp;
char risp2;
system("/bin/sh -c clear");
save=fopen("save.txt","w+"); //creo il file save.txt
printf("Benvenuti in AGENDA V 0.1");
do
{
printf("\n[1]-Per inserire i nomi nel file");
printf("\n[2]-Per visualizzare il contenuto del file");
scanf("%d",&risp);
switch(risp)
{
case 1:{inserimento();}break;
case 2:{visualizzazione();}break;
}
//getchar();
printf("\nAncora? ");
scanf("%s",&risp2);
}while(risp2=='s');
}
//Funzione per l'inserimento
void inserimento()
{
const int righe=5,lettere=20;
char nome[righe][lettere];
char date[righe][lettere];
int nomi,i;
do
{
printf("\nQuanti nomi vuoi inserire?");
scanf("%d",&nomi);
}while(nomi>4);
for(i=0;i<nomi;i++)
{
printf("\nInserire il nome di posto %d",i); //il nome di posto 0 non me lo fa inserire
fgets(nome[i],lettere,stdin);
fputs(" ",save);
fputs(nome[i],save);
}
for(i=0;i<nomi;i++)
{
printf("\nInserire la data di nascita di %s",nome[i]);
fgets(date[i],lettere,stdin);
fputs(date[i],save);
fputs("\n",save);
}
}
//Funzione per la visualizzazione
void visualizzazione()
{
fclose(save);
while(!feof(save))
{
char str[255];
fgets(str,255,save);
printf("%s",str);
}
}
HElp :cry:
Dovrebbe ricevere in input una serie di nomi e date e salvarle su un file..e lo fa..ma i nomi (che sono una matrice di caratteri) non funziona..o meglio funziona ma il nome di posto 0 non vuole farmelo inserire
Qualcuno mi aiuti perchè sto impazzendo e non riesco a capire che cavolo sia
/******************************
** Creare un'agenda in C **
*******************************/
#include <stdio.h>
#include <string.h>
void inserimento(); //prototipo delle
void visualizzazione(); //funzioni
FILE *save;
int main(void)
{
int risp;
char risp2;
system("/bin/sh -c clear");
save=fopen("save.txt","w+"); //creo il file save.txt
printf("Benvenuti in AGENDA V 0.1");
do
{
printf("\n[1]-Per inserire i nomi nel file");
printf("\n[2]-Per visualizzare il contenuto del file");
scanf("%d",&risp);
switch(risp)
{
case 1:{inserimento();}break;
case 2:{visualizzazione();}break;
}
//getchar();
printf("\nAncora? ");
scanf("%s",&risp2);
}while(risp2=='s');
}
//Funzione per l'inserimento
void inserimento()
{
const int righe=5,lettere=20;
char nome[righe][lettere];
char date[righe][lettere];
int nomi,i;
do
{
printf("\nQuanti nomi vuoi inserire?");
scanf("%d",&nomi);
}while(nomi>4);
for(i=0;i<nomi;i++)
{
printf("\nInserire il nome di posto %d",i); //il nome di posto 0 non me lo fa inserire
fgets(nome[i],lettere,stdin);
fputs(" ",save);
fputs(nome[i],save);
}
for(i=0;i<nomi;i++)
{
printf("\nInserire la data di nascita di %s",nome[i]);
fgets(date[i],lettere,stdin);
fputs(date[i],save);
fputs("\n",save);
}
}
//Funzione per la visualizzazione
void visualizzazione()
{
fclose(save);
while(!feof(save))
{
char str[255];
fgets(str,255,save);
printf("%s",str);
}
}
HElp :cry: