Enseignante : Asma Ben Bouyahia TP Algorithme et Programmation
ISSATM 2021/2022
Complément TP Algorithme et Programmation
1. Les types de bases:
a) Les différents types de variables
Les entiers: le langage c distingue plusieurs types d’entiers
Type Domaine Domaine Nombre
minimal maximal d’octets
char -128 127 1
short -32768 32767 2
int -2147483648 2147483647 4
long -2147483648 2147483647 4
unsigned char 0 255 1
unsigned short 0 65535 2
unsigned int 0 4294967295 4
unsigned long 0 4294967295 4
En langage C, le type char est un cas particulier du type entier : un caractère est un entier de 8
bits
le type char peut contenir tous les caractères alphabétiques majuscules et minuscules, les
chiffres de ‘0’ à ‘9’, ainsi que les caractères spéciaux.
Le type int est le type de base pour les calculs avec les entiers relatifs. Un bit est réservé
pour représenter le signe du nombre (en général 0 correspond à un nombre positif).
Avec le qualificatif unsigned (non signé), il n’ya plus de bit réservé au signe et on ne
représente plus que des nombres positifs. Son emploi est réservé à des situations
particulières.
Les types flottants : représentent d’une manière approchée une partie des nombres réels.
Leur notation est sous la forme scientifique (ou exponentielle) exemple: 1.5 1022 ou 0.472 10-8
Dans une telle notation, on appelle « mantisse » les quantités telles que 1.5 ou 0.472 et
« exposants » 22 ou -8.
1ere année TIC Page 1
Enseignante : Asma Ben Bouyahia TP Algorithme et Programmation
ISSATM 2021/2022
Un nombre réel sera représenté en flottant en déterminant deux quantités M (mantisse) et E
(exposant) telle que la valeur [Link] représente une approximation de ce nombre.
Un nombre de bits est réservé en mémoire pour chaque élément.
b) La déclaration des variables
Une variable doit posséder un nom (identificateur définit selon les règles mentionnées au
TP précédent) et un type.
Syntaxe:
Type identificateur;
<Type> <NomVar1>,<NomVar2>,...,<NomVarN>;
Exemples:
float moyenne;
int a, b, c;
Initialisation:
Il est possible d’initialiser les variables lors de leur déclaration:
int i=5;
la valeur d’initialisation peut être le résultat d’une expression:
int i=3*6;
La déclaration des variables permet de:
Introduire les variables qui seront utilisées
Fixer leurs types
Fixer les opérations autorisées
Réserver l’espace mémoire nécessaire
La valeur d’une variable pourra changer au cours de l’exécution du programme
c) Constantes associées aux types de bases
Une constante est une donnée dont la valeur reste fixe tout au long du programme. Elle
peut être un nombre, un caractère ou une chaine de caractère.
Une constante peut être définit de 2 manières:
une constante locale qui sera définit dans le corps du programme
Syntaxe: const type nomConst=valeur;
Exemples: const int MAX=100;
const float e = 2.71828182845905;
const char NEWLINE = '\n';
1ere année TIC Page 2
Enseignante : Asma Ben Bouyahia TP Algorithme et Programmation
ISSATM 2021/2022
une constante globale qui sera définit dans le corps du programme
Syntaxe: #define nomConst valeur
Exemples: #define PI 3.14
#define resultat "reussi"
2. Les opérateurs et les expressions en langage C:
a) Les opérateurs standards
les opérateurs arithmétiques:
+ addition
- soustraction
* multiplication
/ Division entière
% Reste d’une division entière
les opérateurs logiques :
&& Et logique (and)
|| Ou logique (or)
! Négation logique (not)
Les opérateurs de comparaison:
== Égal à
!= Différent
<,<=, Plus petit que, …..
>, >=
Les résultats des opérations de comparaison et des opérations logiques sont du type int :
la valeur 1 correspond à la valeur booléenne « vrai »
la valeur 0 correspond à la valeur booléenne « faux »
1ere année TIC Page 3
Enseignante : Asma Ben Bouyahia TP Algorithme et Programmation
ISSATM 2021/2022
b) Les opérateurs particuliers
Les opérateurs d’affectation:
En pratique nous retrouvons souvent des affectations comme:
i=i+2;
En C, nous utilisons plutôt la formulation plus compacte
i+=2;
+= Ajouter à
-= Diminuer de
*= Multiplier par
/= Diviser par
%= Modulo
Les opérateurs d’incrémentation et de décrémentation:
i++ou ++i incrémentation Augmentation d’une unité
i-- ou --i Décrémentation Diminution d’une unité
Les opérateurs ++ et -- sont employés dans les cas suivants:
Incrémenter/décrémenter une variable. Dans ce cas, il n’ya aucune différence entre la
notation préfixé et post fixé
Incrémenter/décrémenter une variable et en même temps affecter sa valeur à une autre
variable. Dans ce cas, nous devons choisir entre la notation préfixé et post fixé.
x=i++ Passe d’abord la valeur de i à x et incrémente après
x=i-- Passe d’abord la valeur de i à x et décrémente après
1ere année TIC Page 4
Enseignante : Asma Ben Bouyahia TP Algorithme et Programmation
ISSATM 2021/2022
x=++i Incrémente d’abord et passe la valeur incrémentée à x
x= --i Décrémente d’abord et passe la valeur décrémentée à x
Exemple: Supposons que la valeur de N est égale à 5
Incrém. postfixe X=N++; Résultat: N=6 et X=5
Incréme. préfixe X=++N; Résultat: N=6 et X=6
L’opérateur ternaire:
(…..?.....:….)
Test d’une expression ? Valeur renvoyée si vrai : valeur renvoyée si faux
Exemple:
Int i=5, j=2;
i<j ? i+j : i*j;
Le résultat est …
c) La priorité des opérateurs :
Priorité 1 (la plus forte): () Gauche -----> Droite
Priorité 2: ! ++ -- Droite -----> Gauche
Priorité 3: * / % Gauche -----> Droite
Priorité 4: + - Gauche -----> Droite
Priorité 5: < <= > >= Gauche -----> Droite
Priorité 6: == != Gauche -----> Droite
Priorité 7: && Gauche -----> Droite
Priorité 8: || Gauche -----> Droite
= += -= *= /= Droite -----> Gauche
Priorité 9 (la plus faible):
%=
1ere année TIC Page 5