e- t | Salut à toutes et tous . je suis débutant en programmation et je vous sollicite pour un problème sur lequel je butte depuis plusieurs jours ... désolé , de demander une chose qui est certainement évidente pour vous ..
voilà le topo: en utilisant la fonction "fgets" je récupère dans un tab1 deux nombres (1 et 3) stockés dans un fichier texte. Je demande l'affichage dans la fonction, tout est bon. Ensuite je voudrais utiliser ces nombres pour supprimer d'éventuelles occurences avec un tableau tab2 , mais je ne parviens pas à utiliser ces valeurs ni même à les afficher en dehors de "fgets" .. est-ce que quelqu'un veut bien m'éclairer ? Merci d'avance.
voici le code : Code :
- int main()
- {
- /* ouverture du fichier contenant les entiers 1 et 3 .*/
- #define TAILLE_MAX 100
- int tab1[TAILLE_MAX];
- FILE* fichier = NULL;
- fichier = fopen("fichier.txt", "r" );
- if( fichier == NULL)
- printf("\n ouille y a un bleme avec le fichier \n" );
- { fgets( tab1,TAILLE_MAX,fichier);
- printf(" fichier : %s \n\n ", tab1); /* les bonnes valeurs sont affichees */
- fclose(fichier);
- }
- printf(" 1er indice : %d \n\n ",tab1[0]); [][/]/* ici il affiche 3350577 c'est une adresse,non ? */
- int i;
- for( i=0;i<2;i++);
- printf(" affichage tab1: %d \n",tab1[i]); /* ici il affiche 7667712 encore une adresse .. */
- int tab2[]={1,2,3,4,5};
- /* recherche et suppression occurrence */
- int n = 5; int trouve = 0; int occurrence = -1;
- int x; x= tab1[0];
- printf(" \n valeur de x : %d \n" ,x); /* ici il affiche encore 3350577, c'est bon !! */
- while((i<n)&&(trouve==0))
- { if(tab2[i]==x)
- {trouve = 1;
- occurrence = i;
- }
- else
- i++;
- }
- if ( occurrence == -1)
- printf(" la valeur de x n'existe pas. \n" );
- else
- { for(i = occurrence; i<n-1; i++)
- { tab2[i]=tab2[i+1];
- n--;
- }
- printf(" tableau de 4 No : " );
- printf(" %d \n " ,tab2[i]);
- }
- return 0;
- }
|
Message édité par e- t le 05-06-2018 à 10:15:17
|