|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : programmation en C [ Divers / Débutant(e) ] (waloo92i)
Informations & options pour cette discussion
vendredi 9 mai 2008 à 15:10:26 |
programmation en C

waloo92i
|
je ne sais pas comment procéder pour faire sa : Il s'agit dans un premier temps de créer un fichier à partir du clavier ou chaque enregistrement est formé d'un nom et d'un solde, puis charger ce fichier en mémoire centrale pour le trier par ordre alphabétique avant d'écraser ce fichier avec le fichier trié. Puis dans un deuxiéme temps il faut prévoir la modification du solde directement sur le fichier trié. 
|
|
|
vendredi 9 mai 2008 à 18:06:13 |
Re : programmation en C

BastienL21
|
Bonjour, Si je comprends bien, tu voudrais créer un fichier texte dans lequel tu voudrais écrire un nom et un solde ? si oui, voila qui pourrais peut-être t'aider : //METTRE 2 \ pour la direction : fichier = fopen("C: \\RESTEDUCHEMIN \\MonFichier.txt", "a"); //si il est bien ouvert if (fichier != NULL) { fscanf(fichier,"%s", &VariableAInsérer); fclose(fichier); } //si non if(fichier == NULL) { printf("Erreur lors de l'ouverture"); } Cordialement, Bastien
|
|
|
vendredi 9 mai 2008 à 18:08:48 |
Re : programmation en C

BastienL21
|
ERREUR LORS DU PRECEDANT MESSAGE -->voir ligne du code en rouge //METTRE 2 \ pour la direction : fichier = fopen("C: \\RESTEDUCHEMIN \\MonFichier.txt", "a"); //si il est bien ouvert if (fichier != NULL) { fprintf(fichier,"%s", &VariableAInsérer); fclose(fichier); } //si non if(fichier == NULL) { printf("Erreur lors de l'ouverture"); } //Désolé Cordialement, Bastien
|
|
|
vendredi 9 mai 2008 à 20:52:30 |
Re : programmation en C

waloo92i
|
je pense que c'est un plus compliqué que sa voila ce que j'ai fait dite moi ce que vous en pensé mais il reste des warnings que je n'arrive pas a résoudre :
<CODE>#include <stdio.h> #include <stdlib.h> #include <string.h> struct Tree { char nom[32]; char number[32]; struct tree * left; struct tree * right; }* root; void addItem(struct Tree *root, struct Tree *Parain, int bDir, struct Tree *Item) { if (root) { if(strcmp(root->nom, Item->nom)<0) { addItem(root->left, root, 0, Item); } else if (strcmp(root->nom, Item->nom)>0) { addItem(root->right, root, 1, Item); } else if (strcmp(root->number, Item->number)<0) { addItem(root->left, root, 0, Item); } else { addItem(root->right, root, 1, Item); } } else { if (bDir) Parain->right=Item; else Parain->left=Item; } } int fCreerArbre (FILE* file) { char sBuf[128]; struct Tree * Item; while (fgets(sBuf, 128, file)) { Item=(struct Tree*)malloc(sizeof(struct Tree)); sscanf(sBuf, "%s[31] %s[31]", Item->nom, Item->number); Item->left=NULL; Item->right=NULL; if (root) addItem(root, root, 0, Item); else root=Item; } } int fparcoursArbre(FILE *file, struct Tree *root) { if(root) { fparcoursArbre(file, root->left); fprintf(file, "%s %s \r\n", root->nom, root->number); fparcoursArbre(file, root->right); } } int main (int nargs, char ** args) { char * sInputFile; char * sOutputFile; FILE * fInputFile; FILE * fOutputFile; sInputFile=(char *)malloc(strlen(args[1])*sizeof(char)+1); strcpy(sInputFile, args[1]); sInputFile [strlen(args[1])]; sOutputFile=(char *)malloc(strlen(args[1])*sizeof(char)+1); strcpy(sOutputFile, args[1]); sOutputFile [strlen(args[1])]; fInputFile=fopen(sInputFile, "r+"); fOutputFile=fopen(sOutputFile, "w+"); fCreerArbre(fInputFile); fparcoursArbre(fOutputFile, root); fclose(fInputFile); fclose(fOutputFile); return 0; } </CODE>
|
|
|
vendredi 9 mai 2008 à 21:02:20 |
Re : programmation en C

BastienL21
|
Bonsoir, Désolé mais j'ai bien peur de ne pas être à la hauteur (je débute) Mais je peu tout de même essayer Pourrais-tu Expliquer précisément ce que ce programme est sensé faire STP ? Cordialement, Bastien
|
|
|
vendredi 9 mai 2008 à 21:17:26 |
Re : programmation en C

waloo92i
|
Il s'agit dans un premier temps de créer un fichier à partir du clavier ou chaque enregistrement est formé d'un nom et d'un solde, puis charger ce fichier en mémoire centrale pour le trier par ordre alphabétique avant d'écraser ce fichier avec le fichier trié. Puis dans un deuxiéme temps il faut prévoir la modification du solde directement sur le fichier trié
c'est sa qu'il est sensé faire lol je sais pas comment te l'expliquer autrement méme moi g du mal a le comprendre
|
|
|
lundi 12 mai 2008 à 01:49:53 |
Re : programmation en C

waloo92i
|
bon j'ai faciliter un peu le programme est ce que quelqu'un pourait me le corriger parce qu'il me semble qu'il y'a un probléme de segmentaion voila le code: #include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct{ char NOM_PERS[30] ; float solde ; }personne ; int main() { FILE *P_FICHIER; /* pointeur sur FILE */ typedef struct{ char NOM_PERS[30] ; float solde ; }personne ; int C,NB_ENREG , i; char NOM_FICHIER[30], tab[C]; personne p; /* Première partie : Créer et remplir le fichier */ printf("Entrez le nom du fichier à créer : "); scanf("%s",&NOM_FICHIER); P_FICHIER = fopen(NOM_FICHIER, "a+"); /* write */ printf("Nombre d'enregistrements à créer : "); scanf("%d",&NB_ENREG); C = 0; while (C<NB_ENREG) { printf("Entrez le nom de la personne : "); scanf("%s",p.NOM_PERS); fprintf(P_FICHIER, "%s ", p.NOM_PERS); printf("entrez un solde : "); scanf("%f",&p.solde); fprintf(P_FICHIER,"%f\n",p.solde); C++; } for(i=0 ; i< C ; i++){ tab[i]==p.NOM_PERS[30] ; fprintf(P_FICHIER,"%s",tab[i]); } fclose(P_FICHIER); /* Deuxième partie : Lire et afficher le contenu du fichier */ P_FICHIER = fopen(NOM_FICHIER, "r"); /* read */ C = 0; while (!feof(P_FICHIER)) { fscanf(P_FICHIER, "%s", p.NOM_PERS); fscanf(P_FICHIER, "%f\n",p.solde); C++; } for(i=0 ; i< C ; i++){ fscanf(P_FICHIER,"%s",tab[i]); } fclose(P_FICHIER); return 0; }
|
|
|
Cette discussion est classé dans : fichier, temps, programmation, trié, solde
Répondre à ce message
Sujets en rapport avec ce message
Disc dur et programmation [ par zinotron ]
Voila l'affaire: comment manipule ton un dic dur en C ou C++?pas pour lire ou ecrire des données dessus (ca c de la manip de fichier) mais pour par ex
Programmation d'un QCM [ par redpooka ]
J'aurais besoin d'un peu d'aide de quelque morceaux de code, C++Faire un QCM où il lit les questions et les réponses sur un fichier txt.Si vous avez q
gestion de fichier et du temps de la machine [ par rasta_raf ]
Salut tout le monde !-Comment gérer a partir de Visual C++ l'écriture et le copiage de fichiers d'un dossier à un autre.-Comment pouvoir faire une act
Programmation multilingue suite [ par VinceVG ]
SalutJe souhaite traduire un source cpp. Plus précisemment je souhaiterais que a traduction se trouve dans un fichier texte (de type .ini par exemple)
Programmation Système Linux [ par salvio3223 ]
Bonjour bonjour.Je souhaitais simplement demander si il est possible (je pense lol) de copier le résultat de l'execution de commande sur la sortie sta
comment gerer les retour dans un fichier. [ par casper_2 ]
Bonjour jaimerai que dans mon fichier,les retour chariot,soit gerer!!En faite j'aimerai qu'après chaque ecriture,dans le fichier il puisse m'ecrire a
TEMPS EN C [ par man_smi ]
COMMENTS UTILISER LE TEMPS EN C?je veux consulter un fichier pour me degager seulement les informations enregistrer en une date determinée.mon exemp
pb écriture dans fichier [ par phenX ]
slt, voila, bon j'arrive a créer un fichier text sans problème mais je n'arrive pas a écrire ce que je veu dedans. Voila la source: ---------------
programmation C, problème fichier [ par lenneth666 ]
Bonjour alors dans mon porgramme comme je veut faire un parcours d'arborescence j'utilise readdir. struct stat buf struct dirent d pui plus loin dans
Comment accélérer l'écriture des données sur un fichier [ par islem1982 ]
Bonjour tout le monde,En essayant de programmer efficacement un algorithme de fouille de données, j'ai fait face à un problème majeur, à savoir le tem
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|