Exercice 1
Donnez la valeur de chacune des variables dans les opérations suivantes :
int A = 1 + 2 * 3 – 4 ;
int B = (1 + 2) * (3 – 4);
int C = 5 * A++ ;
float D = ++B + 10 ;
float E = D-- / 10 ;
int F = A / B / C / D / E;
Exercice 2
Donner le résultat d’exécution du programme suivant :
#include <stdio.h>
main()
{
unsigned int a = 60; /* 60 = 0011 1100 */
unsigned int b = 13; /* 13 = 0000 1101 */
int c = 0;
c = a & b;
printf("Ligne 1 - Valeur de c est %d\n", c );
c = a | b;
printf("Ligne 2 - Valeur de c est %d\n", c );
c = a ^ b;
printf("Ligne 3 - Valeur de c est %d\n", c );
c = ~a;
printf("Ligne 4 - Valeur de c est %d\n", c );
c = a << 2;
printf("Ligne 5 - Valeur de c est %d\n", c );
c = a >> 2;
printf("Ligne 6 - Valeur de c est %d\n", c );
c = a && b;
printf("Ligne 7 - Valeur de c est %d\n", c );
c = a || b;
printf("Ligne 8 - Valeur de c est %d\n", c );
Exercice 3
Écrire un programme qui résout l’équation AX2+BX+C=0 en envisageant tous les cas
particuliers.
Exercice 4
Un magasin de reprographie facture 0,60 DH les dix premières photocopies, 0,50 DH les
vingt suivantes et 0,40 DH au-delà. Ecrivez un algorithme qui demande à l’utilisateur le
nombre de photocopies effectuées et qui affiche la facture correspondante.
1/2
Exercice 5
Soit le petit programme suivant :
#include<stdio.h>
main(){
int i, n, som ;
som = 0 ;
for (i = 0 ; i < 4 ; i++){
printf ("Donnez un Entier ");
scanf ("%d",&n) ;
som += n ;
}
printf ("Somme : %d\n", som);
}
Exercice 6
Un nombre premier n’est divisible que par 1 ou par lui-même.
Ecrire un algorithme qui lit un entier positif et vérifie si ce nombre est premier ou non.
Exercice 7
a. Écrire un programme qui calcul le factoriel d’un entier positif saisi au clavier.
b. Calculez le N-ième terme UN de la suite de FIBONACCI qui est donnée par la relation
de récurrence : U1=1 U2=1 UN=UN-1+UN-2 (pour N>2)
c. Écrire un programme qui affiche la moyenne d'une suite d'entiers positifs entrés
au clavier. On arrêtera la saisie quand le nombre négatif est entré, comme
dans l'exemple ci-dessous :
2/2