Bonsoir à tous,
je viens poster, parce que je survole un exo de partiel (de l'année dernière)
Voilà l'énoncé :
Ecrire une fonction C de nom "mixageTableaux" permettant de mixer (voir définition plus loin) deux tableaux d'entiers ayant la même taille et de mettre le résultat dans un autre tableau. On supposera que le tableau contenant le résultat a une taille suffisante.
Définition du"mixage" de deux tableaux :
La première case du tableau 1 va dans la première case du tableau résultat, la première case du tableau 2 va dans la deuxième case du tableau résultat.
Puis, la deuxième case du tableau 1 va dans la troisième case du tableau résultat, la deuxième case du tableau 2 va dans la quatrième case du tableau résultat etc...
Alors mon idée est de mettre en parametre de fonction : int t1[], int t2[], int size(taille de t1 et t2) et int *t3[]
Alors est ce que quand je mets ces paramètre pour ma fonction le pointeur est bien placé, sachant que mon tableau t3 sera celui qui contiendra le mix des deux autres ?
je comptais faire a peu près ça comme programme (mais malgré une aide qu'on m'a déja apporté sur ce forum, je reste frileuse avec les pointeurs et les tableaux) :
et du coup une autre question. Quand je fais mon programme principal qui utilisera cette fonction (si elle est correcte), je dois déclarer mes tableaux, mais je bug tout le temps. Notamment pour leur taille je suis obligée de mettre int t1[10] directement ou pas ? ou y'a t'il une façon qui ferait que c'est mon utilisateur qui l'a choisirai ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 void mixageTableaux( int t1[], int t2[], int size, int t3[]) { int i, j; j = 0 ; for (i=0; i<size; i=i+1) { while (j<2*i) { *t3[j] = t1[i] ; * t3[j+1]= t2[i] ; j = j + 2 ; } } }
de plus je ne sais pas comment faire pour par exemple créer un tableau avec des valeurs qui serait des caractère par exemple : a, b, c etc...
je dois faire : int t1[5]= {'a', 'b', 'c', 'd', 'e'}?
voilà le programme que j'aurai fait pour me simplifier la vie (car dans la suite on nous demande de creer un programme qui utilise la fonction.)
Je vous demande ça ici, car je n'ai pas le moyen ce soir de l'executer...
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 int main() { int t1[3], t2[3]; int size = 3 ; int t3[6] ; for (i=0; i<size; i=i+1) { scanf("%d", &t1[i]) ; scanf("%d", &t2[i]) ; } mixageTableaux ( t1, t2, size, &t3) for (i=0; i<2*size; i=i+1) { printf("%d\n", t3[i]) ; } return 0 ; }
Merci d'avance pour vos réponse.
Partager