Ciao oregon, mi hai aiutato molto le scorse volte se potessi ti farei una statua , questa cosa mi è ben chiara ma purtroppo ho tutti i dati all'interno di una struct ti faccio vedere il codice:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define NOME 50
typedef struct{
char nome_utente[NOME];
char nome[NOME];
char cognome[NOME];
char cant_pref[NOME];
struct{
int anno_nascita;
int mese_nascita;
int giorno_nascita;
int giorno_iscr;
int mese_iscr;
int anno_iscr;
}informazioni;
}utente;
int main(){
char s[100]; int i=0; int j=0; int tot_ut=0; char ut_cerc[40]; int trovato=0;
char* c; utente utente[500]; char niente[1]={'\0'}; int nullo={0};
FILE *utenti; FILE *out;
utenti=fopen("Utenti.csv","r+");
out=fopen("out.csv","w");
printf("quale nome utente vuoi eliminare?\n");
scanf("%s", ut_cerc);
while(!feof(utenti)){
c=fgets(s,100,utenti);
if(c!=NULL){
char*token=strtok(s,";");
j=0;
while(token!=NULL){
if(j==0){
strcpy(utente[i].nome_utente,token);
tot_ut=tot_ut+1;
}
if(j==1){
strcpy(utente[i].nome,token);
}
if(j==2){
strcpy(utente[i].cognome,token);
}
if(j==3){
strcpy(utente[i].cant_pref,token);
}
if(j==4){
utente[i].informazioni.giorno_nascita=atoi(token);
}
if(j==5){
utente[i].informazioni.mese_nascita=atoi(token);
}
if(j==6){
utente[i].informazioni.anno_nascita=atoi(token);
}
if(j==7){
utente[i].informazioni.giorno_iscr=atoi(token);
}
if(j==8){
utente[i].informazioni.mese_iscr=atoi(token);
}
if(j==9){
utente[i].informazioni.anno_iscr=atoi(token);
}
token=strtok(NULL,";");
j++;
}
i++;
}
}
for(i=0;i<tot_ut;i++){
if(strcmp(ut_cerc,utente[i].nome_utente)==0){
trovato=1;
printf("Utente Trovato!!!\n");
strcpy(utente[i].nome_utente,niente);
strcpy(utente[i].nome,niente);
strcpy(utente[i].cognome,niente);
strcpy(utente[i].cant_pref,niente);
utente[i].informazioni.giorno_nascita=nullo;
utente[i].informazioni.mese_nascita=nullo;
utente[i].informazioni.anno_nascita=nullo;
utente[i].informazioni.giorno_iscr=nullo;
utente[i].informazioni.mese_iscr=nullo;
utente[i].informazioni.anno_iscr=nullo;
}
fprintf(out,"%s;%s;%s;%s;%d;%d;%d;%d;%d;%d\n",utente[i].nome_utente,utente[i].nome,utente[i].cognome,utente[i].cant_pref,utente[i].informazioni.giorno_nascita,utente[i].informazioni.mese_nascita,utente[i].informazioni.anno_nascita,utente[i].informazioni.giorno_iscr,utente[i].informazioni.mese_iscr,utente[i].informazioni.anno_iscr);
}
if(!trovato){
printf("Utente non presente\n");
}
fclose(utenti);
fclose(out);
remove("Utenti.csv");
rename("out.csv","Utenti.csv");
printf("Utente eliminato!!!!\n");
system("pause");
return 0;
}
Se non stampo gli interi non stamperò gli interi degli altri utenti....