Fiche TD LC

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

Université Amadou Mahtar Mbow

Pr Amadou Dahirou GUEYE ADG


Enseignants intervenants : Sada Anne, Papa A. Diop & Lamine Yade
UFR STA/Licence 1 MPI et SML – Semestre 2 Année ac. 2023-2024
Travaux Dirigés / Travaux Pratiques

Programmation en langage C

CONCEPTS DE BASE DU LANGAGE, Les STRUCTURES


CONDITIONNELLES, LES STRUCTURES REPETITIVES

Exercice 1
Quels sont les résultats fournis le programme suivant :
#include<stdio.h>
#include<stdlib.h>
int main()
{
char c;
int n;
c='s';
printf("cas A : %c\n",c);
n=c;
printf("cas B : %c\n", n);
printf("cas C : %d %d\n", c, n);
printf("cas D : %x %x\n", c, n);
system("pause");
return 0;
}

Exercice 2
Quels résultats fournit le programme suivant :#include
<stdio.h>
int main (){

int i, j, n ;

i =20;
j = 5;
n = i++ * ++ j ;
printf ("A : i = %d, j = %d, n = %d ", i, j, n ) ;

1
i = 15 ;
n = i += 3 ;
printf ("B : i = %d , n = %d ", i, n) ;

i = 3;
j = 5;
n = i *= –j ;
printf ("C : i = %d j = %d n = %d ", i,j, n) ;
return 1 ;

}
Exercice 3
Quels résultats fournira ce programme :
#include <stdio.h> int main(){

int n, p, q ;
n = 5; p = 2;
q = n++ >p || p++ != 3 ;
printf ("A : n = %d p = %d q = %d", n, p, q) ;

n = 5; p = 2;
q = n++<p || p++ != 3 ;
printf ("B : n = %d p = %d q = %d", n, p, q) ;

n = 5; p = 2;
q = ++n == 3 && ++p == 3 ;
printf ("C : n = %d p = %d q = %d", n, p, q) ;

n = 5; p = 2;
q = ++n == 6 && ++p == 3 ;
printf ("D : n = %d p = %d q = %d", n, p, q) ;
return 1 ;

}
Exercice 4
Quels seront les résultats fournis par ce programme :
#include <stdio.h> int main(){

int n = 543 ;int


p=5;
float x = 34.5678 ;
printf ("A : %d, %f ", n, x) ;
printf ("B : %4d, %10f", n, x) ;
printf ("C : %2d, %3f", n, x) ;
printf ("D : %10.3f, %10.3e", x, x) ;

2
printf ("E : %-5d, %f", n,x) ;
printf ("F : %*d", p, n) ;
printf ("G : %*.*f", 12, 5, x) ;
printf ("H : %x : %8x :", n, n) ;
printf ("I : %o : %8o :", n, n) ;
return 1 ;

Exercice 5
Écrivez un programme qui acquiert un nombre décimal ("à virgule"), censé représenter un prix
hors taxes (pht), et qui affiche le prix ttc correspondant. Le taux de la tva est de 19.6

1. Donner le résultat à 2 chiffres après la virgule


2. Donner le résultat à 10 chiffres après la virgule
Exercice 6
Écrire un programme permettant de résoudre l'équation ax2 + bx + c = 0 en envisageant
tous les cas particuliers.
Exercice 7
Ecrire un programme qui lit un caractère au clavier et affiche le caractère ainsi que son code
numérique :

a) en employant getchar et printf,

b) en employant getch et printf.

Exercice 8
Ecrire un programme qui affiche le quotient et le reste de la division entière de deux
nombres entiers entrés au clavier ainsi que le quotient rationnel de ces nombres.

Exercice 9 Année bissextile


Si l’année A n’est pas divisible par 4, alors elle n’est pas bissextile Si A est divisible par 4,
l’année
est bissextile sauf si A est divisible par 100 et pas par 400.
Exemples :
• 1901 n’est pas bissextile car non divisible par 4
• 2004 est bissextile car divisible par 4 et pas par 100
• 2100 n’est pas bissextile car divisible par 4, divisible par 100 mais pas par 400

3
• 2000 est bissextile car divisible par 4, par 100 et par 400
Ecrire un programme qui determine si une annee est bissextile ou non

Exercice 10
Ecrire un programme qui demande à l’utilisateur de taper un chiffre et qui l’écrit ensuite en
toute
lettre à l’écran. Par exemple, si l’utilisateur tape le chiffre 9, le programme affichera neuf.
Note : on ne s’occupera que des chiffres et pas de nombres en dehors de l’intervalle [0 9]
1. if-else
2. if
3. switch

Exercice 11
Écrire un programme qui demande à l'utilisateur sa moyenne de BAC et affiche sa mention.

− Mention Très Bien pour une moyenne égale ou supérieure à 16

− Mention Bien pour une moyenne supérieur ou égale à 14 et inférieure à 16

− Mention Assez Bien pour une moyenne supérieur ou égale à 12 et inférieure à 14

− Passable pour une moyenne supérieure ou égale à 10 et inférieure à 12

− Non admis pour une moyenne inférieure à 10.

Exercice 12
Écrire un programme simulant une calculatrice. On dispose de deux nombres réels saisis au
clavier. Selon un choix effectué à partir d'un menu affiché à l'écran, on désire calculer la
somme ou le produit ou la moyenne ou le minimum ou le maximum de ces deux nombres. Le
menu devrait se présenter à l'utilisateur de la manière suivante :
**************** MENU *******************
1 : ----------> Somme-----------------
2 : ----------> Produit---------------
3 : ----------> Moyenne---------------
4 : ----------> Minimum---------------
5 : ----------> Maximum--------------------------------------------------------
Donnez votre choix ?

4
LES BOUCLES

Exercice 13

1. Quelle est la valeur de S après exécution des instructions suivantes :

int i;
int S = 0;
for (i=1; i < 6; i=i+2)
S = S + i;
}
printf("%d\n", S);

2. Les boucles "for" peuvent être réécrites comme une boucle "while", et vice-versa. Est-ce
que les deux programmes qui suivent sont équivalents ? Si non, pourquoi ?

Exercice 14
Écrire un programme demandant à l'utilisateur de saisir un nombre entier positif. La saisie sera
répétée jusqu'à ce que le nombre soit positif. Même question pour un nombre entier positif et
multiple 3.

Exercice 15
Ecrire un programme qui demande un nombre de départ, et qui calcule sa factorielle.
NB : la factorielle de 8, notée 8 ! vaut 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8

Exercice 16
Écrire un programme qui affiche la table de multiplication d'un nombre quelconque (saisi au
clavier).
Exemple :
pour n=9
1*9=9
2*9=18

5
...
9*9=81

Exercice 17
Ecrire un programme qui Affiche un triangle isocèle formé d'étoiles de N lignes (N est fourni
au clavier).

Exercice 18
Ecrire un programme qui calcule xn, où x est un nombre réel de type double et n un entier. La
valeur de x et n est entrée au clavier. On écrira le programme en utilisant une boucle for, puis
une bouche while.
Remarque : Ne pas utiliser la fonction pow de la bibliothèque math.h

Exercice 19
Écrire un programme en C qui affiche la suite de tous les nombres parfaits inférieurs ou
égaux à un nombre donné (saisi) noté n. Un nombre est dit parfait s'il est égal à la somme de
tous ses diviseurs stricts.
Par exemple, 28 est parfait car 28=1+2+4+7+14.

Exercice 20
Écrire un programme qui demande un nombre pair compris entre 60 et 120, jusqu'à ce
que la réponse convienne. En cas de réponse supérieure à 120, on fera apparaître un message

Exercice 21
Ecrire un programme qui lit N nombres entiers au clavier et qui affiche leur somme, leur
produit et leur moyenne. Le nombre N est à saisir au clavier en début de programme. En
utilisant
1. la boucle "while"
2. la boucle do-while
3. la boucle for
4. goto

Vous aimerez peut-être aussi