Tableaux C

Echap -  
 gautier -
Slt j'ai un petit soucis!!
Je n'arrive pas afficher le nombre de fois qu'un chiffre est contenu dans le tableau.
Ce chiffre étant tapez par un utilisateur.

Voici le script:
#include <stdio.h>
#include <stdlib.h>
main ()
{
    int t[5][20]= { { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 }, 
                    { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 }, 
                     { 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 55, 55, 58, 59 },
                     { 60, 61, 62, 60, 64, 65, 66, 67, 100, 100, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109 }, 
                     { 110, 11, 112, 113, 114, 115, 115, 115, 118, 128, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129 } }; 
      
     int test, i;            
          
printf("Insérez une valeur: \n");
scanf("%d", &test);
          
          
/***********************************/          
for(i=0; i<=test; i++)
{        
           /**/
if(t[i][test]==test)
{                                         
printf("La valeur est dans le tableau.\n");
printf("Et est contenu %d fois\n", i+1); 
}
/**/
}

/*******************************/
system ("PAUSE");
return 0;
}


Par exemple le nombre "55" est contenu 3 fois dans le tableau mais le programme m'affiche qu'il est contenu une fois!!

merci pour votre aide

2 réponses

stef
 
tu dois faire 2 boucles for pour itérer sur tout le tableau
printf("Insérez une valeur: ");
scanf("%d", &test);
printf("\n");

int test, i count=0, j;
for(i=0; i<5; i++) {        
        for(j=0; j<20; j++) {        
          /**/
              if(t[i][j]==test) {
                   count++;
              }
        }
}

printf("%d est  contenu %d fois\n", test, count); 


La tu affiches la bonne valeur.

Stef
0
Echap
 
Merci ça Stef fonctionne impect!!
0
gautier
 
bonjour a tous
voila j aimerais faire un programmme en C qui permet d afficher les lettres contenus dans un tableau en affichant un chiffre, le code est le suivant :

*******************************code**************************
int main()
{
char chiffre2[]={'a','b','c','\0'};
char chiffre3[]={'d','e','f','\0'};
char chiffre4[]={'g','h','i','\0'};
char chiffre5[]={'j','k','l','\0'};
char chiffre6[]={'m','n','o','\0'};
char chiffre7[]={'p','q','r','s','\0'};
char chiffre8[]={'t','u','v','\0'};
char chiffre9[]={'w','x','y','z','\0'};

int chiffre,i,j,k;

printf("chiffre?");
scanf("%d",&chiffre);

if (chiffre == 23)
for (i=0 ; i<4 ; i++){
for (j=0; j<=3; j++)
printf("%c%c \n", chiffre2[i], chiffre3[j]);
}
*****************************fin code**********************************************
mon probléme c est que j aimerais pouvoir afficher : " ad ae af bd be bf cd ce cf "
et moi jai : "
ad
ae
af
a
bd
be
bf
b
cd
ce
cf
c
d
e
f

==> voila j aimerais ne pas avoir le "a" , "b" "c" et "d""e"f" qui sont tout seul . . .
si quelqu un a la solution je le remerci d avance :D
a bientot
0