Boucles
Les boucles sont un moyen de répéter du code autant de fois que nécessaire.
while
La boucle while exécute du code tant que la condition est Vraie.
#include <stdio.h>
int main(void)
{
    int i = 0;
    while (i < 10)
    {
        printf("%d\n", i);
        ++i;
    }
    return 0;
}
$ ./mon_super_programme
0
1
2
3
4
5
6
7
8
9
$
Si la condition est tout de suite Fausse, alors la boucle ne sera jamais exécutée.
#include <stdio.h>
int main(void)
{
    int i = 10;
    while (i < 10)
    {
        printf("%d\n", i);
        ++i;
    }
    return 0;
}
$ ./mon_super_programme
$
do while
do while est une boucle qui va exécuter au moins une fois le code de la boucle.
#include <stdio.h>
int main(void)
{
    int i = 0;
    do
    {
        printf("%d\n", i);
        ++i;
    } while (i < 10);
    return 0;
}
Note le point-virgule ';' à la toute fin de la ligne avec le while.
$ ./mon_super_programme
0
1
2
3
4
5
6
7
8
9
$
Le code sera toujours exécuté au moins une fois.
#include <stdio.h>
int main(void)
{
    int i = 10;
    do
    {
        printf("%d\n", i);
        ++i;
    } while (i < 10);
    return 0;
}
$ ./mon_super_programme
10
$
for
Une boucle for est séparée en trois instructions.
- INITIALISATION qui est exécutée une seule fois au tout début de la boucle
- CONDITION qui est testée à chaque itération
- INSTRUCTION qui est exécutée à chaque itération après le test de la condition, sauf la première fois
for (INITIALISATION; CONDITION; INSTRUCTION)
{
    // Le code
}
Note qu'il y a une séparation avec des point-virgules ';'.
#include <stdio.h>
int main(void)
{
    for (int i = 0; i < 10; ++i)
    {
        printf("%d\n", i);
    }
    return 0;
}
$ ./mon_super_programme
0
1
2
3
4
5
6
7
8
9
$
Tu peux aussi t'en servir pour parcourir les chaînes de caractères.
#include <stdio.h>
int my_strlen(char *str)
{
    int result = 0;
    for (int i = 0; str[i] != '\0'; ++i)
    {
        ++result;
    }
    return result;
}
int main(void)
{
    char *ptr = "coucou les loulous";
    int ptr_size = my_strlen(ptr);
    printf("Longueur de '%s' = %d\n", ptr, ptr_size);
    return 0;
}
$ ./mon_super_programme
Longueur de 'coucou les loulous' = 18
$
Ici tu recodes la fonction strlen qui retourne le nombre de caractères dans une chaîne de caractères.
Je t'invite à lire man 3 strlen.