![]()
Exercice ![]()
![]()
![]()
![]()
![]()
Suivant: Tableaux multidimensionnels Début: Relations entre tableaux et Précédent: Retour sur printf
Exercice
- 1.
- Déclarer et initialiser deux tableaux de caractères (ch1 et ch2).
- 2.
- Écrire une fonction (
lg_chaine1
) qui admette en paramètre un tableau de caractères se terminant par un null, et qui rende le nombre de caractères du tableau (null exclu).- 3.
- Écrire une fonction (
lg_chaine2
) qui implémente le même interface quelg_chaine1
, mais en donnant à son paramètre le type pointeur vers char.- 4.
- La procédure main imprimera le nombre d'éléments de ch1 et ch2 par un appel à
lg_chaine1
etlg_chaine2
.
#include <stdio.h> #define NULL_C '\0' char ch1[] = "cette chaîne comporte 35 caractères"; char ch2[] = "et celle ci fait 30 caractères"; /*****************************************************************************/ /* */ /* lg_chaine1 */ /* */ /* But: */ /* calcule la longueur d'une chaîne de caractères */ /* */ /* Interface: */ /* ch : la chaîne de caractères */ /* valeur rendue : la longueur de ch */ /* */ /*****************************************************************************/ int lg_chaine1(const char ch[]) { int i = 0; while (ch[i] != NULL_C) i++; /* équivalent a while(ch[i]) i++; */ return(i); } /*****************************************************************************/ /* */ /* lg_chaine2 */ /* */ /* But: */ /* identique à celui de lg_chaine1 */ /* */ /*****************************************************************************/ int lg_chaine2(const char *ch) { int i = 0; while (*ch != NULL_C) { i++; ch++; } return(i); } /*****************************************************************************/ /* main */ /*****************************************************************************/ int main() { printf("la longeur de ch1 est %d\n",lg_chaine1(ch1)); printf("la longeur de ch2 est %d\n",lg_chaine2(ch2)); }
30/9/1997