Les outils de base de la programmation en langage C: exercices corrigées


Exercice 1 :

Ecrire un programme en langage C qui permute et affiche les valeurs de trois variables A, B, C de type entier qui sont entrées au clavier :
                                   A ==> B , B ==> C , C ==> A


Solution :
#include <stdio.h>
main()
{
               int A, B, C, AIDE;
               printf("In
troduisez trois nombres (A, B, C) : ");
               scanf("%d %d %d", &A, &B, &C);
               /* Affichage à l'aide de tabulations */
               printf("A = %d\tB = %d\tC = %d\n", A, B, C);
               AIDE=A;
               A=C;
               C=B;
               B=AIDE;
               printf("A = %d\tB = %d\tC = %d\n", A, B, C);
               return 0;
}

Exercice 2 :

Ecrire un programme en langage C 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.


Solution :

#include <stdio.h>
main()
{
                    int A, B;
                    printf("Introduisez deux nombres entiers : ");
                    scanf("%d %d", &A, &B);
                    printf("Division entiere   :  %d\n", A/B);
                    printf("Reste              :  %d\n", A%B);
                    printf("Quotient rationnel :  %f\n", (float)A/B);
                    return 0;
}


Exercice 3 :
Ecrire un programme en langage C qui affiche la résistance équivalente à trois résistances R1, R2, R3 (type double),
- si les résistances sont branchées en série:
Rsér = R1+R2+R3
- si les résistances sont branchées en parallèle:
Rpar = (R1*R2*R3)/(R1*R2+R1*R3+R2*R3)

Solution :

#include <stdio.h>
main()
{
   double R1, R2, R3, RRES;
   printf("Introduisez les valeurs pour R1, R2 et R3 : ");
   scanf("%lf %lf %lf", &R1, &R2, &R3);
   RRES=R1+R2+R3;
   printf("Resistance resultante serielle   : %f\n", RRES);
   RRES=(R1*R2*R3)/(R1*R2+R1*R3+R2*R3);
   printf("Resistance resultante parallele  : %f\n", RRES);
   return 0;
}


Exercice 4 :
Ecrire un programme en langage C qui calcule et affiche l'aire d'un triangle dont il faut entrer les longueurs des trois côtés. Utilisez la formule :
S= P(P-A)(P-B)(P-C)
où A, B, C sont les longueurs des trois côtés (type int) et P le demi-périmètre du triangle.


Solution :
#include <stdio.h>
#include <math.h>
 main()
{
                     /* Pour ne pas perdre de précision lors de la division, */
                     /* déclarons P comme rationnel. */
   int A, B, C;
   float P;
   printf("Introduisez les valeurs pour A, B et C : ");
   scanf("%d %d %d", &A, &B, &C);
                     /* En forçant la conversion de A, les autres opérandes */
                     /* sont converties automatiquement. */
   P=((float)A+B+C)/2;
   printf("Surface du triangle S = %f\n",sqrt(P*(P-A)*(P-B)*(P-C)));
    return 0;
}

Exercice 5 :

Ecrire un programme en langage C qui calcule la somme de quatre nombres du type int entrés au clavier.


Solution :
main()
{
int  A;
 long SOM;
 SOM = 0;
  printf("Entrez le premier   nombre : ");
 scanf("%d", &A);
 SOM+=A;
  printf("Entrez le deuxième  nombre : ");
 scanf("%d", &A);
 SOM+=A;
  printf("Entrez le troisième nombre : ");
 scanf("%d", &A);
 SOM+=A;
  printf("Entrez le quatrième nombre : ");
 scanf("%d", &A);
 SOM+=A;
  printf("La somme des nombres entrés est %ld\n", SOM);
 return 0;
}

Exercice 6 :

Ecrire un programme en langage C qui calcule et affiche la distance DIST (type double) entre deux points A et B du plan dont les coordonnées (XA, YA) et (XB, YB) sont entrées au clavier comme entiers.


Solution :
#include <stdio.h>
#include <math.h>
 main()
{
 int XA, YA, XB, YB;
 double DIST;
 /* Attention: La chaîne de format que nous utilisons */
 /* s'attend à ce que les données soient séparées par */
 /* une virgule lors de l'entrée. */
 printf("Entrez les coordonnées du point A :  XA,YA  ");
 scanf("%d,%d", &XA, &YA);
 printf("Entrez les coordonnées du point B :  XB,YB  ");
 scanf("%d,%d", &XB, &YB);
 DIST=sqrt(pow(XA-XB,2)+pow(YA-YB,2));
 printf("La distance entre A(%d,% d) et B(%d, %d) est %.2f\n",
XA, YA, XB, YB, DIST);
  return 0;
}

Exercice 7:

Ecrire un programme en langage C qui lit un caractère au clavier et affiche le caractère ainsi que son code numérique.


Solution :
#include <stdio.h>
main()
{
 int C;
 printf("Introduire un caractère suivi de 'Enter'\n");
 C = getchar();
  printf("Le caractère %c a le code ASCII %d\n", C, C);
 return 0;
}


Enregistrer un commentaire

Plus récente Plus ancienne