Professional Documents
Culture Documents
Moulay Ismal
Langage C
KHALID SBAI
Enseignant Chercheur
Ecole Suprieure de Technologie
Dpartement de Gnie Electrique
Universit
Moulay Ismal
I. Introduction au langage C
Universit
Moulay Ismal
caractres
alpha- numriques
lettres de A Z
chiffres dcimaux de 0 9
Symboles spciaux
Oprateurs : arithmtiques
et relationnels
Sparateurs
Universit
Moulay Ismal
Identificateurs
Nombres
Caractres
Mots cls
Universit
Moulay Ismal
Source.c
Compilation
Excutable
Universit
Moulay Ismal
23/02/2012
EN-TETE
/* nom du programme */
/* Date*/
// Description //
PARTIE DINCLUSIONS
Les Dfinitions #include <fichier1.h>
PARTIE DECLARATIONS
Les dfinitions de types,
Les Constantes et Les variables,
Les prototypes des fonctions
main()
{
Bloc dInstructions
}
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
23/02/2012
Programme typique en C
include
main()
main() toujours la
1re fonction appele
fonction a()
instructions
fonction b()
instructions
instructions
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Inclusion de la bibliothque
contenant la fonction printf
Dbut du programme
void main()
{
printf ("Bonjour!\n");
}
Premire instruction
Fin du programme
Universit
Moulay Ismal
main()
{ /*Ce programme imprime la chaine de caractre
Bonjour! lcran*/
printf(Bonjour!);
}
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Universit
Moulay Ismal
Universit
Moulay Ismal
unsigned short x;
Universit
Moulay Ismal
3.5e+3
3500 2.43
-0.38
-.38
4.
.27
Universit
Moulay Ismal
'a' , '$' ..
'a' a
Universit
Moulay Ismal
23/02/2012
RESULTAT
\a
\b
\f
\n
\r
\t
\v
\\
\'
\ ''
\?
?
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Universit
Moulay Ismal
break
case
char
const
continue default
do
double else
enum
extern
float
for
goto
if
int
long
signed
sizeof
static
struct
unsigned void
volatile while
Universit
Moulay Ismal
V. LES VARIABLES
V.1. Dclaration
Type nom_de_la_variable [= valeur];
Unsigned
Signed
Float
Double
Long double
Char
Short
Int
long
identificateur
= expression
Exemple:
int nb;
float pi = 3.14;
char c = 'a';
double r = 6.2879821365;
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
OPERATION
addition
soustraction
multiplication
Division (entire et
rationnelle!)
modulo (reste d'une division.
entire)
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Oprateurs de comparaison:
==
!=
<, <=, >, >=
gal
diffrent de
plus petit que, ...
Remarque:
Universit
Moulay Ismal
et logique (and)
ou logique (or)
ngation logique (not)
Universit
Moulay Ismal
Expression:
Rsultat
32 && 2.3
!65.34
Remarque:
les oprateurs relationnels sont moins prioritaires que
les oprateurs arithmtiques
Universit
Moulay Ismal
Vrai
Universit
Moulay Ismal
Exemple
n et p sont des entiers, le compilateur accepte des expression
telles que:
n && p
n||p
if ( !n ) if (n == 0)
Universit
Moulay Ismal
formulation quivalente
qui utilise un seul
oprateur d'affectation
Remarque:
Loprateur daffectation = possde une
associativit de droite gauche : i = j = 5
i=i+k i+=k
a=a/b a/=b
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Universit
Moulay Ismal
X = N++;
X = ++N;
instruction
Instruction quivalente
I = J++ +4;
I = J+4; J = J+1;
I = ++J 7;
J = J+1; I = J 7;
K = (--J) +(M++);
J = J 1; K = J + M; M = M + 1;
K = (++I) -(--M);
I = I + 1; M = M 1; K = I M;
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
OPERATEUR
[ ]() ->
! ++ -* / %
+ < > <= >=
== !=
&&
||
?:
= += -= *= /= %=
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Conversions implicites :
On peut crire des expressions mixtes dans lesquelles
interviennent des oprandes de types diffrents:
int n, p;
float x;
Conversion implicite:
Mme mcanisme :
n * x
+ p;
(int * float) + int
int float
float
( float*float) +
float
+
+
int
int
float float
Universit
Moulay Ismal
Universit
Moulay Ismal
Rsultat de lEvaluation = 1
Rsultat de lEvaluation = 0
Universit
Moulay Ismal
Universit
Moulay Ismal
fonctions de lecture
ou
fonctions dentres
utilises pour prendre des
informations partir du clavier
fonctions dcriture
ou
fonctions de sorties
utilises pour afficher les
rsultats lcran
Universit
Moulay Ismal
23/02/2012
Cest le rsultat de
lexpression qui va
tre afficher
Universit
Moulay Ismal
23/02/2012
Exemple:
int A = 1234;
int B = 567;
int n1= 2, n2= 5;
printf("%d fois %d est %ld\n", A, B, (long)A*B);
printf("la somme de %d + %d = %d",n1,n2, n1+n2);
Remarque:
Un code de format peut contenir des informations
complmentaires agissant sur le cadrage, le gabarit ou la
prcision.
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Universit
Moulay Ismal
Universit
Moulay Ismal
printf("%3d", n );
n = 20
^20
n=3
^^3
n = 2358
2358
n = -5200
-5200
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
printf("%f" , x );
x = 1.2345
1.234500
x = 12.3456789
12.345679
printf("%10f" , x );
x = 1.2345
^^1.234500
x = 1.2345E5
123450.000000
printf("%e" , x );
x = 1.2345
1.234500e+00
x = 123.45
1.234500e+02
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
^^^^^1.235
x = 1.2345E3
^^1234.500
x = 1.2345E7
12345000.000
Universit
Moulay Ismal
1.235^^^^^
^^^^^1.2
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal
Universit
Moulay Ismal
23/02/2012
Universit
Moulay Ismal
23/02/2012
Universit
Moulay Ismal
Universit
Moulay Ismal
n = 12 p=25
n = 12 p=25
n = 12 p=25
n = 12 c=
Khalid SBAI Cours dinformatique
Universit
Moulay Ismal