Probleme avec structure et tableau
Résolu
josh64
Messages postés
56
Date d'inscription
Statut
Membre
Dernière intervention
-
josh64 Messages postés 56 Date d'inscription Statut Membre Dernière intervention -
josh64 Messages postés 56 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je tente de faire un programme qui va chercher des villes et des températures dans le fichier temperature.txt suivant :
2 //le nombres de ville
irun 12 20 14 13 24 6 17
bidard 3 10 11 9 8 14 16
mais cela ne fonctionne pas enfin si, voilà ce qui m'es retourné :
le nombre de ville est : 2
----------------------
les villes sont :
irun 12
----------------------
----------------------
i = 2 et j = 7
les temperatures sont :
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
----------------------
donc voici mon code (en C) :
#include <stdio.h>
#include <stdlib.h>
#define TAYVILLE 10
#define NBJOUR 7
#define DEBUG
struct temperature{
char ville[TAYVILLE];
float tp[NBJOUR];
};
int main (){
int i,j;
int nbville;
FILE *fp;
fp=fopen("temperature.txt","r");
if(fp==NULL){
printf("ouverture impossible du fichier");
scanf("%*c");
exit (0);
}
fscanf(fp,"%d",&nbville);
struct temperature temper[nbville][NBJOUR];
/*on extrait le nom des villes*/
for(i=1;i<nbville+1;i++){
for(j=0;j<1;j++){
fscanf(fp,"%s ",temper[i][j].ville);
}
}
#ifdef DEBUG
printf("le nombre de ville est : %d\n",nbville);
printf("----------------------\n");
printf("les villes sont :\n");
for(i=1;i<nbville+1;i++){
for(j=0;j<1;j++){
printf("%s ",temper[i][j].ville);
//printf("%s ",temper[2][0].ville);
}
}
printf("\n----------------------\n");
#endif
/*on extrait les températures des villes*/
for(i=1;i<nbville;i++){
for(j=1;j<NBJOUR;j++){
fscanf(fp,"%f ",temper[i][j].tp);
//printf("\n%f ",temper[i][j].tp);
}
}
#ifdef DEBUG
printf("----------------------\n");
printf("i = %d et j = %d\n",i,j);
printf("les temperatures sont :\n");
for(i=1;i<nbville;i++){
for(j=0;j<NBJOUR;j++){
printf("%f ",temper[i][j].tp);
//printf("%s ",temper[2][0].tp);
}
}
printf("\n----------------------\n");
#endif
return (0);
}
i need help!
je tente de faire un programme qui va chercher des villes et des températures dans le fichier temperature.txt suivant :
2 //le nombres de ville
irun 12 20 14 13 24 6 17
bidard 3 10 11 9 8 14 16
mais cela ne fonctionne pas enfin si, voilà ce qui m'es retourné :
le nombre de ville est : 2
----------------------
les villes sont :
irun 12
----------------------
----------------------
i = 2 et j = 7
les temperatures sont :
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
----------------------
donc voici mon code (en C) :
#include <stdio.h>
#include <stdlib.h>
#define TAYVILLE 10
#define NBJOUR 7
#define DEBUG
struct temperature{
char ville[TAYVILLE];
float tp[NBJOUR];
};
int main (){
int i,j;
int nbville;
FILE *fp;
fp=fopen("temperature.txt","r");
if(fp==NULL){
printf("ouverture impossible du fichier");
scanf("%*c");
exit (0);
}
fscanf(fp,"%d",&nbville);
struct temperature temper[nbville][NBJOUR];
/*on extrait le nom des villes*/
for(i=1;i<nbville+1;i++){
for(j=0;j<1;j++){
fscanf(fp,"%s ",temper[i][j].ville);
}
}
#ifdef DEBUG
printf("le nombre de ville est : %d\n",nbville);
printf("----------------------\n");
printf("les villes sont :\n");
for(i=1;i<nbville+1;i++){
for(j=0;j<1;j++){
printf("%s ",temper[i][j].ville);
//printf("%s ",temper[2][0].ville);
}
}
printf("\n----------------------\n");
#endif
/*on extrait les températures des villes*/
for(i=1;i<nbville;i++){
for(j=1;j<NBJOUR;j++){
fscanf(fp,"%f ",temper[i][j].tp);
//printf("\n%f ",temper[i][j].tp);
}
}
#ifdef DEBUG
printf("----------------------\n");
printf("i = %d et j = %d\n",i,j);
printf("les temperatures sont :\n");
for(i=1;i<nbville;i++){
for(j=0;j<NBJOUR;j++){
printf("%f ",temper[i][j].tp);
//printf("%s ",temper[2][0].tp);
}
}
printf("\n----------------------\n");
#endif
return (0);
}
i need help!
A voir également:
- Probleme avec structure et tableau
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
2 réponses
il vaut mieux utiliser un tableau a une dimension
essaye ça
essaye ça
#include <stdio.h> #include <stdlib.h> #define TAYVILLE 10 #define NBJOUR 7 #define DEBUG struct temperature{ char ville[TAYVILLE]; float tp[NBJOUR]; }; int main (){ int i,j; int nbville; FILE *fp; fp=fopen("temperature.txt","r"); if(fp==NULL){ printf("ouverture impossible du fichier"); scanf("%*c"); exit (0); } fscanf(fp,"%d",&nbville); struct temperature temper[nbville]; /*on extrait le nom des villes*/ for(i=0;i<nbville;i++){ fscanf(fp,"%s",temper[i].ville); for(j=0;j<7;j++) { fscanf(fp,"%f",&(temper[i].tp[j])); } } #ifdef DEBUG printf("le nombre de ville est : %d\n",nbville); printf("----------------------\n"); printf("les villes sont :\n"); for(i=0;i<nbville;i++){ printf("%s ",temper[i].ville); //printf("%s ",temper[2][0].ville); } printf("\n----------------------\n"); #endif /*on extrait les températures des villes*/ #ifdef DEBUG printf("----------------------\n"); printf("i = %d et j = %d\n",i,j); printf("les temperatures sont :\n"); for(i=0;i<nbville;i++){ for(j=0;j<NBJOUR;j++){ printf("%f ",temper[i].tp[j]); //printf("%s ",temper[2][0].tp); } } printf("\n----------------------\n"); #endif return (0); }