IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Recopie de tableaux


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 45
    Par défaut Recopie de tableaux
    Bonjour,

    J'ai deux tableaux dont le deuxième a la taille du deuxième -1.
    Je veux saisir une valeur n et recopier les valeurs du premier tableau dans le deuxième sauf la valeur n.

    J'ai essayer de mettre un if dans une boucle et si c'est pas n on recopie la case.
    Sauf que lors de la recopier ça met une valeur aléatoire. et ca ne copie pas toutes les valeurs du tableau.

    :/ C'est pour un exercice il n'y rien d'utile là dedans mais ca me prends la tête donc voilà

    Voici mon script:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    #include <stdio.h>
    #define TAILLE 10 
     
    void main()
    {
    	int n,i,tmp,perm;
    	int tableau[TAILLE]={6,5,4,1,2,3,9,8,7,12};
    	int tableau_final[TAILLE-1];
     
    	printf("\nVeuillez saisir la valeur de l'entier n a supprimer: ");
    	scanf("%d",&n);
     
    		printf("Affichage du tableau: \n");
    for (i=0;i<=9;i++) printf("%d\n",tableau[i]);	
     
    	for(i=0;i<=9;i++)
    	{
    		if(tableau[i] != n)
    		{
    		tableau_final[i]=tableau[i];
    		} 
    	}
     
     
    	printf("Affichage du tableau final: \n");
    for (i=0;i<=8;i++) printf("%d\n",tableau_final[i]);	
    }

    J'espère que vous pourrez m'aider..
    J'ai un peu de mal à m'exprimer donc demandez si vous n'avez pas toutes les infos...

    Bonne journée.
    Jerem

  2. #2
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    La boucle est incorrecte :
    tableau_final[i]=tableau[i]; n'est valable que tant qu'on n'a pas sauté une valeur. A partir de là, il y a un décalage de 1 position entre les éléments de tableau_final et ceux de tableau.
    Il est préférable d'avoir une indexation différente pour les deux tableaux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    j=0;
    for(i=0;i<TAILLE ;i++)
    {
       if(tableau[i] != n)
       {
          tableau_final[j]=tableau[i];
          j++ ;
       }
    } // j contient maintenant le nombre d'éléments de tableau_final :
    printf("Affichage du tableau final: \n");
    for (i=0;i<j;i++) printf("%d\n",tableau_final[i]);
    Note : main renvoie toujours un int.

  3. #3
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 45
    Par défaut
    Merci beaucoup!
    J'ai tout compris grâce à ton explication. Merci de ne pas avoir juste donner la solution
    Super forum, toujours là en cas de besoin.
    J'espère un jour pouvoir passer de l'autre côté et aider les gens

    Merci beaucoup
    Cdlt

Discussions similaires

  1. Réponses: 11
    Dernier message: 08/01/2011, 22h52
  2. free sur des tableaux "a moitié dynamiques"
    Par barthelv dans le forum C
    Réponses: 4
    Dernier message: 31/07/2003, 15h30
  3. [langage] erreurs utilisation tableaux 2 dimensions
    Par drosof dans le forum Langage
    Réponses: 11
    Dernier message: 01/07/2003, 11h44
  4. Réponses: 6
    Dernier message: 04/04/2003, 15h28
  5. Les tableaux en PL/SQL
    Par GRUMLY dans le forum PL/SQL
    Réponses: 5
    Dernier message: 12/08/2002, 18h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo