« Exercices en langage C/Pointeurs » : différence entre les versions

Contenu supprimé Contenu ajouté
→‎Question 1 : Manque "}"
Commentaires C++ -> Commentaire C, présentation blocs de code
Ligne 13 :
const nb_lettres = 26;
 
int main(void)
{
/* déclaration d'une chaîne <=> tableau de caractères. */
char ch[]="ceci est une chaîne de test";
printf("ChaineChaîne en memoiremémoire : %s\n",ch);
 
char/* ch[]="ceci est une chaine de test"; //déclaration d'uneun chainepointeur <=>sur tableauune chaîne de caractèrescaracteres. */
char *p = ch;
printf("Chaine en memoire : %s\n",ch);
 
char /*p = ch; //déclaration d'un pointeurtableau surde une26 chaine decases caracteres.correspondant
aux lettres de l'alphabet, contenant les occurrences
 
int occ[nb_lettres]; //déclaration d'un tableau de 26 cases correspondant aux lettres de l'alphabet, contenant les occurrences des lettres trouvées dans la chaîne.*/
int occ[nb_lettres];
}
</source>
Ligne 29 ⟶ 34 :
{{Boîte déroulante|titre=Solution|contenu =
<source lang="C">
/* occ[i]=0; //initialisation du tableau des occurrences à 0. */
int i=0;
for (i=0; i<nb_lettres;++i)
occ[i]=0;
occ[i]=0; //initialisation du tableau des occurrences à 0.
</source>
}}
Ligne 39 ⟶ 45 :
{{Boîte déroulante|titre=Solution|contenu =
<source lang="C">
/* parcours de la chaîne.
 
while (*p != '\0'){ //parcours de la chaine. Caractère de fin d'une chainechaîne en C : '\0'. */
while (*p != '\0')
 
{
if (*p >= 'a' && *p <= 'z'){
++p;{
++occ[*p-'a'];
}
else if (*p >= 'A' && *p <= 'Z'){
{
++occ[*p-'A'];
}
++p;/* //incrémentation du pointeur <=> passage à la lettre suivante. */
++p;
}
 
</source>
}}
Ligne 58 ⟶ 68 :
<source lang="C">
 
for (i=0; i<nb_lettres; ++i){
{
printf("Nombre de %c : %i\n",'a'+i,occ[i]); //le transtypage est automatique : 'a'+i renvoie un entier.
printf("Nombre de %c : %i\n",
++p;
printf("Nombre de %c : %i\n",'a'+i,occ[i]); /* //le transtypage est automatique : 'a'+i renvoie un entier. */
occ[i]);
}
 
Ligne 75 ⟶ 87 :
#define taille_max 5
 
void parcours(int *tab)
{
int *q=tab;
do
{
printf("%d:%d\n", q-tab, *q-*tab);
}
Ligne 84 ⟶ 98 :
 
 
void bizarre(int **copie, int *source)
{
*copie=source;
}
 
int main(void)
{
 
int chose[taille_max] = {1,3,2,4,5}, *truc;
printf("chose : \n");