« 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";
char *p = ch;
▲ printf("Chaine en memoire : %s\n",ch);
aux lettres de l'alphabet, contenant les occurrences
int occ[nb_lettres];
}
</source>
Ligne 29 ⟶ 34 :
{{Boîte déroulante|titre=Solution|contenu =
<source lang="C">
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')
{
if (*p >= 'a' && *p <= 'z')
++occ[*p-'a'];
}
else if (*p >= 'A' && *p <= 'Z') {
++occ[*p-'A'];
}
++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;
▲
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");
|