algorithme de création d'un tableau

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>


// Prototype de la fonction d'affichage
void affiche(int *tableau, int tailleTableau);
int recherche(int tableau[], int tailleTableau, int valeur);
void trier(int tableau[], int tailleTableau);
void fusionner(int tableau[], int tailleTableau, int tableau1[], int tailleTableau1);

int main(int argc, char *argv[])
{
    int tableau[6] = {10, 15, 3, 6, 1, 2};
    int tableau1[6] = {20, 1, 13, 7, 0, 4};
    int tableau2[8] = {11, 1, 23, 16, 31, 22, 50, 5};
    int tableau3[3] = {0, 5, 32};
    int n;

    // On affiche le contenu du tableau
    affiche(tableau, 6);
    printf("\n\n");
    printf("Entrer une valeur a rechercher:   ");
    scanf("%d",&n);
    if( recherche(tableau,6,n)==1)
    {
     printf("\n La valeur %d est dans le tableau",n);
    }
    else
    {
     printf("\n La valeur %d est abscente dans le tableau",n);
    }
    printf("\n\nVoici le tableau trié dans l'ordre croissant\n\n");
    trier(tableau, 6);
    affiche(tableau, 6);

    printf("\n\nVoici la fusion de 2 tableaux\n\n");
    fusionner(tableau, 6,tableau1,6);

     getch();
    return 0;
  
}

void affiche(int tableau[], int tailleTableau)
{
    int i;

    for (i = 0 ; i < tailleTableau ; i++)
    {
        printf("%d   ", tableau[i]);
    }
}

int recherche(int tableau[], int tailleTableau, int valeur)
{
    int i;
    //bool trouve=false

    for (i = 0 ; i < tailleTableau ; i++)
    {
        if( tableau[i]== valeur)
        {
          return 1 ;
        }
    }
    return 0;
}

void trier(int tableau[], int tailleTableau)
{
    int i,j,k;

    for (i = 0 ; i < tailleTableau ; i++)
    {
        k=tableau[i];
        for (j = i+1 ; j < tailleTableau ; j++)
        {
         if(tableau[j]<k)
         {
           k=tableau[j];
           tableau[j]=tableau[i];
           tableau[i]=k;
         }
        }
    }

}

void fusionner(int tableau[], int tailleTableau, int tableau1[], int tailleTableau1)
{
 int i,j,k,l,n;
 int tableau2[tailleTableau + tailleTableau1];
 for (i = 0 ; i < tailleTableau ; i++)
 {
  tableau2[i]= tableau[i];
 }

 for (j = 0 ; j < tailleTableau1 ; j++)
 {
  tableau2[i]= tableau1[j];
  i++;
 }

 trier(tableau2, tailleTableau + tailleTableau1);

 for (i = 0 ; i < tailleTableau + tailleTableau1 ; i++)
 {
   printf("%d   ", tableau2[i]);
 }

}



19/03/2010
0 Poster un commentaire

A découvrir aussi


Inscrivez-vous au blog

Soyez prévenu par email des prochaines mises à jour

Rejoignez les 13 autres membres