0% ont trouvé ce document utile (0 vote)
0 vues18 pages

aapdf

Ce programme en C permet de gérer les enregistrements d'étudiants à travers des opérations telles que la saisie, l'affichage, la recherche, la modification, la suppression et le renommage de fichiers. Les données des étudiants sont stockées dans un fichier texte et peuvent être manipulées via un menu interactif. Le programme utilise des structures pour organiser les informations des étudiants et gère la mémoire dynamique pour les opérations de saisie et d'affichage.

Transféré par

bersonbrumaire
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues18 pages

aapdf

Ce programme en C permet de gérer les enregistrements d'étudiants à travers des opérations telles que la saisie, l'affichage, la recherche, la modification, la suppression et le renommage de fichiers. Les données des étudiants sont stockées dans un fichier texte et peuvent être manipulées via un menu interactif. Le programme utilise des structures pour organiser les informations des étudiants et gère la mémoire dynamique pour les opérations de saisie et d'affichage.

Transféré par

bersonbrumaire
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

#include<stdio.

h>

#include<conio.h>

#include<string.h>

#include<stdlib.h>

#define true 1

#define false 0

struct etudiant{

char prenom[20];

char nom[10];

char code[15];

char telephone[10];

char sexe[10];

int age;

char option[10];

};

etudiant *x;

FILE *f;

char nomfichier[50]="final_struct.txt";

void saisie()

int i,n;

f=fopen(nomfichier,"a");

if(f==NULL)

printf("le fichier ne peut pas ouvir\n");


return;

x=(struct etudiant*)malloc(sizeof(struct etudiant));

printf("entrer le nombre d'ami que tu veux enregistrer \nR:");

scanf("%d",&n);

fflush(stdin);

printf("donc tu veux enregistrer %d etudiant\n",n);

getch();

if(n>0)

for(i = 0 ; i < n ; i++)

printf("entrer le prenom de l'ami :");

scanf ("%s",x->prenom);

fflush(stdin);

printf("entrer le nom de l'ami :");

scanf ("%s",x->nom);

fflush(stdin);

printf("entrer le code de l'ami :");

scanf ("%s",x->code);

fflush(stdin);
printf("entrer le numero telephone de l'ami :");

scanf ("%s",x->telephone);

fflush(stdin);

printf("entrer le sexe de l'ami :");

scanf ("%s",x->sexe);

fflush(stdin);

printf("entrer l'age de l'ami :");

scanf ("%d",&x->age);

fflush(stdin);

printf("entrer l'option de l'ami :");

scanf ("%s",x->option);

fflush(stdin);

fprintf(f,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,x-
>age,x->option);

printf("\nvoila ton ami\n%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x-


>telephone,x->sexe,x->age,x->option);

getch();

if(n<=0)
{

printf("\ntu n'as rien a enregistrer, donc je ferme le fichier\n");

free(x);

fclose(f);

void affichage()

int ligne=1;

f=fopen(nomfichier,"r");

if(f==NULL)

printf("le fichier est vide\n");

return;

x=(struct etudiant*)malloc(sizeof(struct etudiant));

while(fscanf(f,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,&x-
>age,x->option) == 7)

printf("%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,x-
>age,x->option);
getch();

ligne=ligne+1;

free(x);

fclose(f);

void recherche()

int trouver=0;

char rcode[10];

f=fopen(nomfichier,"r");

if(f==NULL)

printf("le fichier n'a pas de donnees\n");

return;

x=(struct etudiant*)malloc(sizeof(struct etudiant));

printf("entrer le code de l'ami rechercher :");

scanf("%s",&rcode);

fflush(stdin);
while(fscanf(f,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,&x-
>age,x->option)==7)

if(strcmp(rcode,x->code)==0)

trouver=1;

printf("code trouver\n");

printf("%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x-
>sexe,x->age,x->option);

getch();

//break;

free(x);

fclose(f);

if(trouver==0)

printf("desole, ce code n'existe pas\n");

getch();

void remove()

{
char rep;

printf("vous voulez effacer le fichier (oui(o) ou non(n))? \nR:");

scanf ("%c",&rep);

if(rep=='o')

int r = remove(nomfichier);

if(r==0)

printf("le fichier est effacer!!!\n");

getch();

else

printf("le fichier n'est pas effacer!!!\n");

getch();

void rename()

char rep[50];

printf("entrer le nouveau nom du fichier :");

scanf ("%s",rep);
int r = rename(nomfichier,rep);

if(r==0)

strcpy(nomfichier,rep);

printf("le fichier est rennomer!!!\n");

getch();

else

printf("le fichier n'est pas rennomer!!!\n");

getch();

void modifier()

int trouver;

char rche[10],nc[100],nn[100],np[100],na,nt[100],ns[100],no[100];

f=fopen(nomfichier,"r");

if(f==NULL)

printf("desoler, le fichier est vide\n");

return;

FILE *temp=fopen("[Link]","w");
if(temp==NULL)

printf("le fichier ne peut pas ouvrir\n");

return;

x=(struct etudiant*)malloc(sizeof(struct etudiant));

printf("entrer le code de l'etudiant pour que vous modifiez le donner vous voulez:");

scanf("%s",&rche);

fflush(stdin);

while(fscanf(f,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,&x-
>age,x->option)==7)

if(strcmp(rche,x->code)==0)

trouver=1;

printf("code trouver");

printf("%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x-
>sexe,x->age,x->option);

getch();

printf("nouveau prenom: ");

scanf("%s",np);

fflush(stdin);

printf("nouveau nom: ");


scanf("%s",nn);

fflush(stdin);

printf("nouveau code: ");

scanf("%s",nc);

fflush(stdin);

printf("nouveau telephone: ");

scanf("%s",nt);

fflush(stdin);

printf("nouveau sexe: ");

scanf("%s",ns);

fflush(stdin);

printf("nouveau age: ");

scanf("%d",&na);

fflush(stdin);

printf("nouveau option: ");

scanf("%s",no);

fflush(stdin);

fprintf(temp,"%s %s %s %s %s %d %s\n",np,nn,nc,nt,ns,na,no);

getch();

printf("la modification a reussir\n");

printf("%s %s %s %s %s %d %s\n",np,nn,nc,nt,ns,na,no);

getch();
}

else

fprintf(temp,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x-
>telephone,x->sexe,x->age,x->option);

if(trouver==0)

printf("code introuvable!\n");

getch();

free(x);

fclose(f);

fclose(temp);

remove(nomfichier);

rename("[Link]",nomfichier);

void remplacer()

int trouver;

char ncode[20],acode[20];
f=fopen(nomfichier,"r");

if(f==NULL)

printf("\nle fichier est vide\n");

return;

FILE *temp=fopen("[Link]","w");

x=(struct etudiant*)malloc(sizeof(struct etudiant));

printf("\nentrer l'ancien code de l'etudiant:");

scanf("%s",acode);

fflush(stdin);

printf("\nentrer le nouveau code maintenant:");

scanf("%s",ncode);

fflush(stdin);

trouver=0;

while(fscanf(f,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,&x-
>age,x->option)==7)

if(strcmp(acode,x->code)==0)

trouver=1;

printf("\ncode trouver");
printf("%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x-
>sexe,x->age,x->option);

getch();

fprintf(temp,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,ncode,x-
>telephone,x->sexe,x->age,x->option);

printf("\nsucces!!!\n");

printf("%s %s %s %s %s %d %s\n",x->prenom,x->nom,ncode,x->telephone,x-
>sexe,x->age,x->option);

getch();

else

fprintf(temp,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x-
>telephone,x->sexe,x->age,x->option);

if(trouver==0)

free(x);

printf("desole, le code n'as pas pu trouver\n");

getch();

fclose(f);

fclose(temp);

remove(nomfichier);
rename("[Link]",nomfichier);

void effacer()

char rche[10];

int trouver=0;

f=fopen(nomfichier,"r");

if(f==NULL)

printf("le fichier est vide\n");

return;

FILE *temp;

temp=fopen("[Link]","w");

x=(struct etudiant*)malloc(sizeof(struct etudiant));

printf("entrer le code enregistrement vous voulez effacer:");

scanf("%s",rche);

fflush(stdin);

while(fscanf(f,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x->telephone,x->sexe,&x-
>age,x->option)==7)

{
if(strcmp(rche,x->code)==0)

trouver=1;

printf("succes!!!\n");

getch();

else

fprintf(temp,"%s %s %s %s %s %d %s\n",x->prenom,x->nom,x->code,x-
>telephone,x->sexe,x->age,x->option);

if(trouver==0)

printf("le code est introuvable\n");

free(x);

fclose(f);

fclose(temp);

remove(nomfichier);

rename("[Link]",nomfichier);

int main()

{
int choix;

do

printf("\nMenu");

printf("\n==========================================");

printf("\n si vous voulez saisir des donnees tapez 1");

printf("\n si vous voulez afficher des donnees tapez 2");

printf("\n si vous voulez rechercher des donnees tapez 3");

printf("\n si vous voulez sortir dans le programme tapez 4");

printf("\n si vous voulez modifier des donnees tapez 5");

printf("\n si vous voulez effacer le fichier tapez 6");

printf("\n si vous voulez changer le nom du fichier tapez 7");

printf("\n si vous voulez remplacer un ancien code enregistrement tapez 8");

printf("\n si vous voulez effacer un enregistrement tapez 9");

printf("\n\n entrer votre choix:");

scanf("%d",&choix);

fflush(stdin);

switch(choix)

case 1:

saisie();

break;

case 2:

affichage();
break;

case 3:

recherche();

break;

case 4:

printf("\nAu revoir");

break;

case 5:

modifier();

break;

case 6:

remove();

break;

case 7:

rename();

break;

case 8:

remplacer();

break;

case 9:

effacer();

break;

default:

printf("\nchoix invalide");

break;

}while(choix!=4);
return 0;

Vous aimerez peut-être aussi