Documente Academic
Documente Profesional
Documente Cultură
1. lecompilateur
2. Structured'unprogramme
3. L'environnementduprogramme
LestypesfondamentauxduC
Les types fondamentaux du C
Dclarationdeconstantes
Dclarationdevariables
Dclarationdetypes
4. Lecorpsduprogramme
L'affectation
Lesexpressionsetlesoprateurs:arithmtiques,logiques,
relationnelles,mixtes,prioritdesoprateurs
Autresoprateurs:binaires,conditionnelsetdesquences, d'appel
defonction,sizeof
Lesinstructions:IF,IF_ELSE,FOR,WHILE,DO_WHILE,BREAK,
CONTINUE,GOTO,SWITCH
Lesentres/sorties
5. Documentationdesprogrammes
06/11/2009 Algorithmique/C CPIESI 1
1. LECOMPILATEUR
HISTORIQUE
Le langage C est apparu au cours de l'anne 1972 dans les Laboratoires Bell. Il tait
d l
dvelopp en mme
t
temps que UNIX par Dennis
D i Ritchie
Rit hi ett Ken
K Thompson.
Th C t un
Cest
langage impratif
COMPILATEURC
Uncompilateurserttraduireuncodesource
Uncompilateurserttraduireuncodesource critdansunlangagedeprogrammation
critdansunlangagedeprogrammation
enunautrelangage,habituellementunlangaged'assemblageouun
enunautrelangage,habituellementunlangaged'assemblage ouunlangagemachine
langagemachine..
Leprogrammeenlangagemachineproduitparuncompilateurestappelcodeobjet
Leprogrammeenlangagemachineproduitparuncompilateurestappel codeobjet..
ENVIRONNEMENTDEDVELOPPEMENTINTGR
Unenvironnementdedveloppementintgr(EDI ouIDE enanglaispourIntegrated
DevelopmentEnvironment)estunprogrammeregroupantunensembled'outilspourle
dveloppementdelogiciels.Enrglegnrale,unEDIregroupeunditeurdetexte,un
compilateur,undbogueur. VisualC++estunEDIWindowsconuparMicrosoftpourles
langagesdeprogrammationC etC++.IlfaitpartiedelasuitedelogicielsVisualStudio.
1
07/11/2009
Directives de prcompilation
#include <------------>
#include ------------
#define.
2. STRUCTUREDUNPROGRAMMEC
#include<stdio.h> /*Directivesdeprcompilation*/
voidaffiche_calcul(float,float);/*prototype*/
floatproduit(float,float); /*prototype*/
int glob;/*dclration devariablesglobales*/
int main(void) /*programmeprincipal*/
{
float a,b;/*dclarationlocale*/
glob=0;
puts("veuillez
puts( veuillezentrer2valeurs
entrer 2 valeurs"); );
scanf("%f%f",&a,&b);
affiche_calcul(a,b);
printf("nombred'appelsproduit :%d\n",varglob);
}
2
07/11/2009
2. STRUCTUREDUNPROGRAMMEC
/*Implmentation desfonctions */
float produit(float r float s)
floatproduit(floatr,floats)
{
glob++;
return(r*s);
}
voidaffiche_calcul(floatx,float y)
Appels de la fonction produit
{
float vloc;
vloc=produit(x,y);
vloc produit(x,y);
vloc=produit(vloc,vloc);
printf("lecarrduproduitest%f\n",vloc);
}
EnC,uncommentairedbuteparlessymboles(colls)/* etseterminepar
lessymboles*/.
3. LENVIRONNEMENTDUPROGRAMME
LESCONSTANTES
Les constantes entires
dcimales : 345 Les constantes flottantes
octales : 0245 3.45 .4 2e4
hexadcimales : 0x5a2b ou 0x45A
3
07/11/2009
4. LECORPSDUPROGRAMME
LAFFECTATION
Oprateurdaffectation
Variable =expression
X=I++ passed'abordlavaleurdeIXetincrmenteaprs
X=I passed'abordlavaleurdeIXetdcrmenteaprs
X=++I incrmented'abord etpasselavaleurincrmenteX
X=I dcrmented'abord etpasselavaleurdcrmenteX
I++ou++I pourl'incrmentation(augmentationd'uneunit)
I ouI pourladcrmentation(diminutiond'uneunit)
4
07/11/2009
4. LECORPSDUPROGRAMME
IF ELSE
If(expression)instruction1;
If(expression)instruction1;else instruction2;
4. LECORPSDUPROGRAMME
FOR
Format
for ( expression1 ; expression2 ; expression3 ) instruction;
Expression 1 valeur initiale ; Expression 2 valeur de fin ; Expression 3 incrment
Exemple :
for(i=0;i<100;i++) for(i=0,j=0;i+j<100;i++,j++)
{ {
printf(%d,i*i); printf( %d,i*j);
s+=i; s+=i*j;
} }
5
07/11/2009
4. LECORPSDUPROGRAMME
WHILE
Format
i=0;
While (i<100)
(i<100)
{
printf( %d,i*i);
s+=i;
i++;
}
4. LECORPSDUPROGRAMME
DOWHILE
Format
Do
instruction;
While (expressionlogique);
i=0;
Do {
Do{
printf( %d,i*i);
s+=i;
i++;
}(While (i<100);
6
07/11/2009
4. LECORPSDUPROGRAMME
SWITCH
Format
SWITCH(expressionentire)
{
caseCste1:instruction;Break;
caseCste2:instruction;Break;
.
caseCsten :instruction;Break
Default:instructions;
}
Exemple : Simulation dune calculatrice x+*/y
06/11/2009 Algorithmique/C CPIESI 13
#include<stdio.h>
voidmain(void)
{
float val1,val2,res;
charop;
int fin=0;
do
{
puts("calculeffectuer(parex5*2),ou1=1pourfinir?")
scanf("%f%c%f",&val1,&op,&val2);
switch(op)
{
case'*:res=val1*val2;break;
case'/:res=val1/val2;break;
case'+:res=val1+val2;break;
case ':res=val1
case : res=val1val2;
val2;break;
break;
case'=':fin++;
}
if(!fin)printf("%f%c%f=%f\n",val1,op,val2,res);
}while (!fin);
}
7
07/11/2009
4. LECORPSDUPROGRAMME
LESENTREESSCANF
Format
Scanf (format,liste_dexpressions)
Format est une chane de caractres indiquant sous forme de squences
dchappement les entits que scanf lit sur lentre standard
squences dchappement
%c caractre %d entier dcimal %x entier hexadcimal
Int i,j;
scanf(%d %d ,i,j)
4. LECORPSDUPROGRAMME
LES SORTIES: PRINTF
Format
Printf (chanedecaractres,liste_dexpressions)
Chane de caractres = texte entre guillemet imprimer dans lequel on
met des squences dchappement qui indiquent les formats selon
lesquels on veut imprimer la valeur des expressions
squences dchappement
%c caractre %d entier dcimal %x entier hexadcimal
Int i=12;
Intj =32;
Printf ( la valeur de i est %d et celle de j est %d ,i,j)
06/11/2009 Algorithmique/C CPIESI 16