#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
struct etudiant{
char nom[10];
float moy;
};
void AjoutEtudiant(struct etudiant E,FILE *ficheierEtudiant) {
ficheierEtudiant = fopen("C:/Users/Ayoub/Desktop/TDTP/Ex1/Etudiant.dat","w");
char rep;
do{
printf("Saisir nom etudiant a Ajouter: ");
scanf("%s",&E.nom);
printf("Saisir son Moyen: ");
scanf("%f",&E.moy);
fwrite (&E, sizeof(struct etudiant), 1,ficheierEtudiant);
if(fwrite!=0){
printf("\n\nEtudaint Ajouter avec succees !\n\n");
}
printf("\nvoulez vouz Ajouter un autre etudiant? (O,N): ");
scanf("%s",&rep);
} while(toupper(rep)!='N');
fclose(ficheierEtudiant);
}
void EcrireListeEtudiant(struct etudiant E, FILE* fichierEtudiant) {
fichierEtudiant=fopen("C:/Users/Ayoub/Desktop/TDTP/Ex1/Etudiant.dat","rb");
while(fread(&E,sizeof(struct etudiant),1,fichierEtudiant))
printf("Nom Etudiant: %s",E.nom,"| Moyen= %f \n",E.moy);
fclose(fichierEtudiant);
}
int main()
{
FILE *fichierEtudiant;
struct etudiant E;
AjoutEtudiant(E,fichierEtudiant);
EcrireListeEtudiant(E,fichierEtudiant);
}
Я добавляю имена и их метки (float) в файл, но когда я пытаюсь отобразить их, он показывает только имя и игнорирует части с плавающей точкой в файле! Я пробовал много способов, но в итоге все испортил. Может кто-нибудь помочь мне разобраться в проблеме?