Vous êtes sur la page 1sur 4

Matière Niveau

Initiation à la programmation en C 1ACP

TP-04 (Structures répétitives)

Partie I : Correction d’erreurs


Corriger les erreurs des programmes suivants :
Erreurs de compilation
1)
#include <stdio.h>
int main(){
int i;
for (i=0,i>10,i++) {
printf("%d\n", i);
}
}
2)
#include <stdio.h>
int main(){
int i=0;
do
printf("%d", i);
while (i++<10)
}
3)
#include <stdio.h>
int main(){
int i=0,j=10;
do
printf("%d", i);
printf("%d", j);
while (i++<10);
}
Erreurs de logique
1)
#include <stdio.h>
int main(){
int i;
for (i=0;i>10; i++) {printf("%d\n", i);}
}
2)
#include <stdio.h>
int main(){
int i;
for (i=0;i=10;i++) {printf("%d\n", i);}
}
3)
#include <stdio.h>
int main(){
char reponse;
printf("Voulez-vous vraiment supprimer ce fichier ? O/N ");
scanf("%c",&reponse);
while (reponse != 'O' && reponse != 'N'){
printf("Saisir 'O' ou 'N' SVP \n");
}
}

Page 1 sur 4
Matière Niveau

Initiation à la programmation en C 1ACP

Partie II : Exécution de programmes


Donnez le résultat et l’état de la mémoire à la fin de l’exécution des programmes suivants :
1)
#include <stdio.h>
int main(){
int i=0;
while(i++<3)
printf("%d",i);
}
2)
#include <stdio.h>
int main(){
int i;
for (int i=0; i++<10;) {
printf("%d\n",i);
}
}
3)
#include <stdio.h>
int main(){
int i;
for (int i=1; i++<=10; i++) {
printf("%d\n",i);
}
}
4)
#include <stdio.h>
int main(){
int i=0;
for(;;)
if(i++>10)
break;
printf("%d",i);
}
5)
#include <stdio.h>
int main(){
int i=0;
for(;;)
if(i++>10){
break;
printf("%d",i);
}
}
6)
#include <stdio.h>
int main(){
int i=0;
while(i<3)
printf("%d",i);
i++;
}

Page 2 sur 4
Matière Niveau

Initiation à la programmation en C 1ACP

7)
#include <stdio.h>
int main(){
int i,j;
for (i=0;i<5;++i) {
for (j=1;j<=3;++j) {
printf("%d",j);
}
printf("\n");
}
}
8)
#include <stdio.h>
int main(){
int i,j;
for (i=0;i<5;++i) {
printf("%d->",i);
for (j=1;j<=3;++j) {
printf("%d",j);
}
printf("\n");
}
}
9)
#include <stdio.h>
int main(){
int i,j;
for (i=0;i<3;++i) {
for (j=1;j<=3;++j) {
printf("(%d,%d)",i,j);
}
printf("\n");
}
}
10)
#include <stdio.h>
int main(){
int i,j;
for (i=0;i<5;++i) {
for (j=1;j<=i;++j) {
printf("(%d,%d)",i,j);
}
printf("\n");
}
}

Page 3 sur 4
Matière Niveau

Initiation à la programmation en C 1ACP

Parties III : Exercices


1) Écrire un programme en C qui affiche le maximum de dix nombres saisis par l’utilisateur.

2) Écrire un programme en C qui affiche le maximum et le minimum de dix nombres saisis par
l’utilisateur.

3) Écrire un programme en C qui affiche la somme de dix nombres saisis par l’utilisateur.

4) Ecrire un programme en C qui afficher un triangle rectangle en utilisant des astérisques.

5) Ecrire un programme en C qui afficher une pyramide en utilisant des astérisques.

6) Écrire un programme en C qui demande à l’utilisateur de saisir un entier N compris entre 1 et 9 et


affiche à l’écran une ligne de sortie composée de chiffres croissants de 1 à N suivis de chiffres
décroissants de N-1 à 1. Par exemple, si N = 5, le programme doit afficher la ligne 123454321.

7) Écrire un programme en C qui lit des notes saisies au clavier et affiche le nombre de notes qui
sont comprises entre 10 et 20 (pour terminer la saisie des notes, on saisit la valeur -1).

8) Modifier le programme précédent pour afficher aussi le nombre et la moyenne des notes valides
(une note est valide si elle appartient à l’intervalle [0,20]).

9) Écrire un programme en C qui permet à un professeur de saisir les notes de ses étudiants et
affiche la moyenne de la classe. Le programme demande au professeur de saisir le nombre
d’étudiants N ainsi que les notes de ces étudiants. Le programme ne doit pas permettre des notes
invalides. Avant de calculer la moyenne de la classe le programme doit avoir exactement N notes
valides saisies.

10) Un magasin de vente de mobilier qui offre à ces clients des tables trois pieds et des tables quatre
pieds reçoit une commande de la part d’un client demandant 22 tables avec 78 pieds. Combien de
tables trois pieds et combien de tables quatre pieds le magasin doit livrer à ce client ? Ecrivez un
programme en C permettant de calculer le nombre de table pour chaque type?

Page 4 sur 4

Vous aimerez peut-être aussi