Exercices corrigés langage c – Instructions Simples
Exercice 1
Écrire un algorithme qui calcule et affiche le quotient et le reste de la division entière de deux nombres entiers saisis au clavier.
Solution
#include <stdio.h>
void main()
{
int a,b;
float rest,quot;
printf(“donner deux entiers: \n”);
scanf(“%d %d”,&a,&b);
rest=a%b;
quot=a/b;
printf(“le quotient de a/b est %.1f \n le reste de a/b est %.1f”,quot,rest);
}
Exercice 2
Écrire un algorithme qui calcule et affiche la résistance équivalente à trois résistances (dont les valeurs sont saisies au clavier) branchées en série et en parallèle. On rappelle que :
Rsérie = R1+ R2 + R3 Rparallèle= (R1+R2+R3)/(R1R2+R1R3+R2R3)
Solution
#include <stdio.h>
void main()
{
float r1,r2,r3,rs,rp;
printf(“donner trois resistances: \n”);
scanf(“%f %f %f”,&r1,&r2,&r3);
rs=r1+r2+r3;
rp=rs/((r1*r2)+(r1*r3)+(r2*r3));
printf(“Rs= %.3f \nRp= %.3f “,rs,rp);
}
Exercice 3
Écrire un algorithme qui permet d’échanger les valeurs de 3 entiers saisis au clavier (valeur de B en A, valeur de C en B, valeur de A en C).
Solution
#include <stdio.h>
void main()
{
int a,b,c,aux;
printf(“donner trois entiers: \n”);
scanf(“%d %d %d”,&a,&b,&c);
printf(“avant permutation:\n a=%d \n b=%d \n c=%d \n”,a,b,c);
aux=a;
a=c;
c=b;
b=aux;
printf(“après permutation:\n a=%d \n b=%d \n c=%d “,a,b,c);
}
Exercice 4
Un ouvrier est payé 3.397 DT par heure et 4.322 DT pour les heures supplémentaires. Il subit une retenue de base de 2.2% sur son salaire brut (le salaire brut est le salaire obtenu en tenant compte des heures de base et des heures supplémentaires).
Écrire un algorithme qui, connaissant le nombre d’heures de base et le nombre d’heures supplémentaires, permet de calculer le salaire final de l’ouvrier.
Solution
#include <stdio.h>
void main()
{
const int ph=2;
const int phs=2;
int nbh,nbhs;
float sbrut,sfinal;
printf(“donner nombre d’heures de base et supplementaire: \n”);
scanf(“%d %d”,&nbh,&nbhs);
int r=ph;
int rs=phs;
sbrut=(nbh*ph)+(nbhs*phs);
sfinal=(97.8*sbrut)/100;
printf(“Votre salaire finanl est %f “,sfinal);
}
Exercice 5
Écrire un algorithme qui permet de calculer la somme de 4 valeurs saisies au clavier
- en utilisant 5 variables
- en utilisant 2 variables
Solution
#include <stdio.h>
void main()
{
int a,b,c,d,s;
printf(“donner 4 entiers \n”);
scanf(“%d %d %d %d”,&a,&b,&c,&d);
s=a+b+c+d;
printf(“somme = %d \n”,s);
// METHODE 2
int v1,v2=0;
printf(“AUTRE METHODE DE 2 VAR : \n donner 1 entiers \n”);
scanf(“%d”,&v1);
v2=v2+v1;
printf(“donner 1 entiers \n”);
scanf(“%d”,&v1);
v2=v2+v1;
printf(“donner 1 entiers \n”);
scanf(“%d”,&v1);
v2=v2+v1;
printf(“donner 1 entiers \n”);
scanf(“%d”,&v1);
v2=v2+v1;
printf(“La somme est s= %d \n”,v2);
}
Exercice 6
Dire si le nom de ces variables est valide ou non valide.
prod_a | $total | ||
Newbal | moyenne | ||
9ab6 | _c3 | ||
c123 | new bal | ||
sum.of | grade1 | ||
Abcd | 1234 |
Solution
#include <stdio.h>
void main()
{
int prod_a;
int $total;
int Newbal;
int moyenne;
//int 9ab6; faux
int _c3;
int c123;
//int new bal; faux
//int sum.of; faux
int grade1;
int Abcd;
//int 1234; faux
Exercice 7
Écrire un algorithme qui calcule la surface d’un cercle sachant que son rayon est 2.59. Surface = rayon2 * 3.14
Solution
#include <stdio.h>
#include <math.h>
#define pi 3.14
void main()
{
const float r=2.59;
float s=pow(r,2)*pi;
//sqrt(x) racine carré
//pow(a,b) puisssance de a^b
printf(“%.3f”,s);
}
Exercice 8
Écrire un algorithme qui calcule le volume d’un cylindre sachant que son rayon est 5.2 et sa profondeur est de 2.8. Volume = rayon2 * 3.14 * profondeur.
Solution
#include <stdio.h>
#include <math.h>
#define pi 3.14
void main()
{
const float r=5.2;
const float h=2.8;
float v=pow(r,2)*pi*h;
//sqrt(x) racine carré
//pow(a,b) puisssance de a^b
printf(“%.3f”,v);
}
Exercice 9
Écrire un algorithme qui convertit une température en degré Fahrenheit en une température degré celsius. Sachant que la température en degré Fahrenheit est égale à 41. temp _cal = 5/9×(temp_far-32)
Solution
#include <stdio.h>
void main()
{
const float tmpf=62;
float tmpc;
tmpc=(5.0/9.0)*(tmpf-32);
printf(“%f”,tmpc);
}