Académique Documents
Professionnel Documents
Culture Documents
Les variables
Instructions de contrôle
Les fonctions
Les tableaux
Les Structures
Les Chaînes de caractères
Les fichiers
Langage C
December 9, 2016
Plan
L’instruction break
1 Introduction au langage C L’instruction continue
Structure d’un Programme C 4 Les fonctions
Mon premier programme en C Définition
Commentaires Types de Fonctions
2 Les variables 5 Les tableaux
Définition d’une variable Définition
Types de variable Tableaux à une dimension
Les constantes nommées Tableaux multidimensionnels
Les opérateurs de base 6 Les Structures
Les opérateurs d’incrémentation et Définition
de décrémentation Manipulation des structures
Les opérateurs combinés 7 Les Chaînes de caractères
La fonction scanf Définition
Ecriture et lecture d’un caractère Généralités
3 Instructions de contrôle 8 Les fichiers
Structures de choix Définition
Structures répétitives Déclaration/Ouverture
Exercice:
Crée un algorithme qui affiche bonjour.
Exercice:
#include<stdio.h>
int main( )
{
printf("Bonjour, ceci est mon premier programme en C !!") ;
return 0 ;
}
Commentaires:
Pour rendre un programme plus compréhensible, on peut
utiliser des commentaires.
Un commentaire est une séquence de caractères ignorée par le
compilateur, on s’en sert pour expliquer des portions de code.
On délimite un commentaire sur plusieurs lignes par /* et */.
Si un commentaire s’étend sur une ligne on utilise les
caractères //
Commentaires:
/* Ce programme vous affiche Bonjour !!
à l’écran */
/*************************************************
***/
#include<stdio. h> //déclaration des bibliothèques
//fonction principale
int main( )
{
printf("Bonjour, ceci est mon premier programme en C !!") ;
//Affichage de Bonjour
return 0 ;
}
Pr. Youssef El merabet Langage C
Introduction au langage C
Définition d’une variable
Les variables
Types de variable
Instructions de contrôle
Les constantes nommées
Les fonctions
Les opérateurs de base
Les tableaux
Les opérateurs d’incrémentation et de décrémentation
Les Structures
Les opérateurs combinés
Les Chaînes de caractères
La fonction scanf
Les fichiers
Ecriture et lecture d’un caractère
Les variables:
Une variable est un emplacement de la mémoire dans lequel
est stockée une valeur.
Exemple:
a = 2+3 valeur de a: 5
r = 3%2 valeur de a: 1
a = (3==3) valeur de a: 1
a = (6==5) valeur de a: 0
a = (2!=3) valeur de a: 1
a = (6<=3) valeur de a: 0
a = !1 valeur de a: 0
a =((3==3) || (6<=3)) valeur de a: 1
a =((3==3) && (6<=3)) valeur de a: 0
5 = a; /* Faux, on n’affecte pas une variable au nombre 5.*/
a+ 1 = 2; /* est rejetée, le membre à gauche (a+1) n’est pas une
variable mais une expression */
i = i + 1; <==> i++;
j = j - 1; <==> j- -;
- - est :
un opérateur de pré-décrémentation si la variable est placée à droite (- -
i). dans ce cas, la valeur de la variable <i> est décrémentée, puis utilisée.
un opérateur de post-décrémentation si la valeur est placée à gauche ( i -
-). Dans ce cas, la valeur de la variable <i> est d’abord utilisée telle
qu’elle, puis décrémentée.
Pr. Youssef El merabet Langage C
Introduction au langage C
Définition d’une variable
Les variables
Types de variable
Instructions de contrôle
Les constantes nommées
Les fonctions
Les opérateurs de base
Les tableaux
Les opérateurs d’incrémentation et de décrémentation
Les Structures
Les opérateurs combinés
Les Chaînes de caractères
La fonction scanf
Les fichiers
Ecriture et lecture d’un caractère
Exemple
int m , n , p, q;
m =1 ; p=0 ;
Exemple:
a = a + b est équivalent à a +=b
a = a – b est équivalent à a -=b
a = 2*a est équivalent à a *=2.
Exemple:
a = a + b est équivalent à a +=b
a = a – b est équivalent à a -=b
a = 2*a est équivalent à a *=2.
Description:
La fonction scanf permet de faire une lecture formatée du flux
standard d’entrée (le clavier par défaut).
Elle lit les caractères en entrée, les interprète en concordance avec
les spécifications de format décrites dans la chaîne format, et place
les résultats dans les arguments arg.
Exemple:
#include <stdio.h>
int main()
{
int i,j;
double d;
char lettre;
printf("tapez un entier: ");
scanf("%d ", &i);
printf("tapez 2 entiers et 1 double: ");
scanf("%d %d %lf ", &i, &j, &d);
printf("tapez un caractère");
scanf("%c", lettre);
return 0;
}
Exemple:
#include <stdio.h>
int main()
{
char c;
c=getchar(); // Lecture d’un caractère
putchar(c); //Affichage du caractère lu
return 0;
}
Pr. Youssef El merabet Langage C
Introduction au langage C
Définition d’une variable
Les variables
Types de variable
Instructions de contrôle
Les constantes nommées
Les fonctions
Les opérateurs de base
Les tableaux
Les opérateurs d’incrémentation et de décrémentation
Les Structures
Les opérateurs combinés
Les Chaînes de caractères
La fonction scanf
Les fichiers
Ecriture et lecture d’un caractère
Instructions de contrôle
Les instructions de contrôle servent à contrôler le déroulement de
l’enchaînement des instructions à l’intérieur d’un programme. Ces
instructions peuvent être des instructions conditionnelles (de choix)
ou itératives.
Exemple1
#include <stdio.h>
int main( )
{
int note = 16 ;
if (note > 14)
printf("Mention très bien ") ;
return 0 ;
}
Pr. Youssef El merabet Langage C
Introduction au langage C
Les variables
Instructions de contrôle Structures de choix
Les fonctions Structures répétitives
Les tableaux L’instruction break
Les Structures L’instruction continue
Les Chaînes de caractères
Les fichiers
Exemple2
#include <stdio.h>
int main( )
{
int a = 1 ;
if (a> = 0)
printf("l’entier %d est positif ", a) ;
else
printf("l’entier %d est négatif ", a) ;
return 0 ;
}
Exemple
if(condition1)
if(condition2)
instruction1;
else
instruction2;
else instruction3;
syntaxe
switch(expression) /*Le type de ‘expression’ ne peut être qu’entier*/
{
case cas1: i nstructions1;
case cas2: instructions2;
.
.
.
case casN: instructionsN;
default: instructions_par_défaut; /* le cas "default" étant facultatif */
}
Exemple
#include <stdio.h>
int main ( ) {
int mois;
printf(" donner le mois en numéro: " );
scanf(" %d " , &mois);
switch(mois){
case 1 : printf(" Janvier " ); break;
case 2 : printf(" Fevrier " ); break;
case 3 : printf(" Mars " ); break;
case 4 : printf(" Avril " ); break;
case 5 : printf(" Mai" ); break;
case 6 : printf(" Juin " ); break;
case 7 : printf(" Juillet " ); break;
case 8 : printf(" Aout " ); break;
case 9 : printf(" Septembre " ); break;
case 10 : printf(" Octobre" ); break;
case 11 : printf(" Novembre " ); break;
case 12 : printf(" Décembre" ); break;
default: printf(" Mois invalide " ); break;
}
return 0;
}
Exemple1
int main ( ){
int i ;
for(i=1 ;i<=10 ; i++)
printf("i=%d \n", i);
return 0 ;
}
Exemple2
int main ( ){
int i=0 ;
for(i=0 ;i<10 ; i++)
printf("2*%d =% \n", i, i*2);
return 0 ;
}
Exemple1
int main ( ){
int i ;
for(i=1 ;i<=10 ; i++)
printf("i=%d \n", i);
return 0 ;
}
Exemple2
int main ( ){
int i=0 ;
for(i=0 ;i<10 ; i++)
printf("2*%d =% \n", i, i*2);
return 0 ;
}
Exemple1
int main ( ){
int i ;
for(i=1 ;i<=10 ; i++)
printf("i=%d \n", i);
return 0 ;
}
Exemple2
int main ( ){
int i=0 ;
for(i=0 ;i<10 ; i++)
printf("2*%d =% \n", i, i*2);
return 0 ;
}
Exemple1
int main( ){
int i = 1 ;
while( i <= 5 )
{
printf ( "%d " , i ) ;
i ++;
}
return 0 ;
}
Exemple1
int main( ){
int i = 1 ;
while( i <= 5 )
{
printf ( "%d " , i ) ;
i ++;
}
return 0 ;
}
Exemple1
int main( ) {
int i = 0;
do {
printf("%d \n", i);
i = i + 1;
} while (i < 10);
return 0;
}
Exemple2
int main( ) {
char c;
do {
printf("Veuillez taper la lettre ’o’\n");
scanf("%c", &c);
} while (c != ’o’);
return 0;
}
Exemple1
int main( ) {
int i = 0;
do {
printf("%d \n", i);
i = i + 1;
} while (i < 10);
return 0;
}
Exemple2
int main( ) {
char c;
do {
printf("Veuillez taper la lettre ’o’\n");
scanf("%c", &c);
} while (c != ’o’);
return 0;
}
Exemple1
int main( ) {
int i = 0;
do {
printf("%d \n", i);
i = i + 1;
} while (i < 10);
return 0;
}
Exemple2
int main( ) {
char c;
do {
printf("Veuillez taper la lettre ’o’\n");
scanf("%c", &c);
} while (c != ’o’);
return 0;
}
L’instruction break
L’instruction break peut être généralement employée à
l’intérieur de n’importe quelle boucle (for ; while ; do
. . . while ; switch). Elle permet l’abandon de la structure et
le passage à la première instruction qui suit la structure.
En cas de boucles imbriquées, break fait sortir de la boucle la
plus interne la première qui contient le break.
Exemple1
int n ;
for ( ; ; ) //boucle infinie
{
printf("donner un nombre (0 pour sortir) : ");
scanf("%d", &n);
if (n == 0) break;
printf("%f", (float)1/n) ;
}
Exemple2
int main( )
{
int i, j ;
for (i = 1 ; i<=15 ; i++)
{
for (j = 1 ; j<=15 ; j++)
{ L’exécution de ce programme donne :
if (j == 5) break ;
else
printf("%d \t", i * j) ;
}
printf("\n") ;
}
return 0 ;
}
Pr. Youssef El merabet Langage C
Introduction au langage C
Les variables
Instructions de contrôle Structures de choix
Les fonctions Structures répétitives
Les tableaux L’instruction break
Les Structures L’instruction continue
Les Chaînes de caractères
Les fichiers
Exemple2
int main( )
{
int i, j ; L’exécution de ce programme donne :
for (i = 1 ; i<=15 ; i++)
{
for (j = 1 ; j<=15 ; j++)
{
if (j == 5) break ;
else
printf("%d \t", i * j) ;
}
printf("\n") ;
}
return 0 ;
}
Pr. Youssef El merabet Langage C
Introduction au langage C
Les variables
Instructions de contrôle Structures de choix
Les fonctions Structures répétitives
Les tableaux L’instruction break
Les Structures L’instruction continue
Les Chaînes de caractères
Les fichiers
L’instruction continue
Dans une instruction for, while ou do while, l’instruction continue provoque l’arrêt de l’itération courante,
et le passage au début de l’itération suivante.
Exemple
int main( )
{
int i ;
for (i=0; i<10;i++) L’exécution de ce programme donne :
{
if ((i%3)==0) continue; i=1i=2i=4i=5i=7i=8
printf("i = %d \t ",i); Sortie:
} i = 10
printf("\n sortie : ");
printf(" \n \t i =%d ",i);
return 0 ;
}
L’instruction continue
Dans une instruction for, while ou do while, l’instruction continue provoque l’arrêt de l’itération courante,
et le passage au début de l’itération suivante.
Exemple
int main( )
{
int i ;
for (i=0; i<10;i++) L’exécution de ce programme donne :
{
if ((i%3)==0) continue; i=1i=2i=4i=5i=7i=8
printf("i = %d \t ",i); Sortie:
} i = 10
printf("\n sortie : ");
printf(" \n \t i =%d ",i);
return 0 ;
}
L’instruction continue
Dans une instruction for, while ou do while, l’instruction continue provoque l’arrêt de l’itération courante,
et le passage au début de l’itération suivante.
Exemple
int main( )
{
int i ;
for (i=0; i<10;i++) L’exécution de ce programme donne :
{
if ((i%3)==0) continue; i=1i=2i=4i=5i=7i=8
printf("i = %d \t ",i); Sortie:
} i = 10
printf("\n sortie : ");
printf(" \n \t i =%d ",i);
return 0 ;
}
Les fonctions
Il est préférable de décomposer le programme en plusieurs
fonctions
lorsqu’une opération est répétitive ou complexe, il est conseillé
de l’écrire dans un programme sous forme d’une fonction.
la fonction est défénie une seule fois dans le programme mais
elle peut être appelée plusieurs fois dans le programme.
Programme facile à écire et facile à lire.
Les fonctions
Il est préférable de décomposer le programme en plusieurs
fonctions
lorsqu’une opération est répétitive ou complexe, il est conseillé
de l’écrire dans un programme sous forme d’une fonction.
la fonction est défénie une seule fois dans le programme mais
elle peut être appelée plusieurs fois dans le programme.
Programme facile à écire et facile à lire.
Les fonctions
Il est préférable de décomposer le programme en plusieurs
fonctions
lorsqu’une opération est répétitive ou complexe, il est conseillé
de l’écrire dans un programme sous forme d’une fonction.
la fonction est défénie une seule fois dans le programme mais
elle peut être appelée plusieurs fois dans le programme.
Programme facile à écire et facile à lire.
Les fonctions
Il est préférable de décomposer le programme en plusieurs
fonctions
lorsqu’une opération est répétitive ou complexe, il est conseillé
de l’écrire dans un programme sous forme d’une fonction.
la fonction est défénie une seule fois dans le programme mais
elle peut être appelée plusieurs fois dans le programme.
Programme facile à écire et facile à lire.
Exemple :
fonction qui calcule la somme de deux entiers et qui retourne
le résultat.
Types de Fonctions
fonctions sans paramètres
fonctions avec paramètres
passage par adresse
Les tableaux
Un tableau est une variable stricturée formée d’un ensemble
d’éléments de même type appelés : les composantes du
tableau.
Chaque élément est repéré par un indice precisant la position.
Le nom du tableau est son identificateur.
Les tableaux
Un tableau est une variable stricturée formée d’un ensemble
d’éléments de même type appelés : les composantes du
tableau.
Chaque élément est repéré par un indice precisant la position.
Le nom du tableau est son identificateur.
Les tableaux
Un tableau est une variable stricturée formée d’un ensemble
d’éléments de même type appelés : les composantes du
tableau.
Chaque élément est repéré par un indice precisant la position.
Le nom du tableau est son identificateur.
Tableaux multidimensionnels:
Exemple1
#define M 2
#define N 3
int main()
{
/* Déclaration et initialisation d’un tableau d’entiers à deux dimensions*/
int tab[M][N] = { {1, 2, 3}, {4, 5, 6} };
/*Affichage du tableau*/
for (i = 0 ; i < M; i++)
{
for (j = 0; j <N; j++)
printf("tab[%d][%d]=%d \n",i,j,tab[i][j]);
printf("\n");
}
}
Exemple2
#define M 2
#define N 3
int main()
{
/* Déclaration et initialisation d’un tableau d’entiers à deux dimensions*/
int tab[M][N],i,j;
/*Saisie des éléments du tableau */
for (i = 0 ; i < M; i++)
{
for (j = 0; j <N; j++)
{
printf("donner tab[%d][%d]: \n",i,j);
scanf("%d",&tab[i][j]);
}
} /*Affichage du tableau*/
for (i = 0 ; i < M; i++)
{
for (j = 0; j <N; j++)
printf("tab[%d][%d]=%d \n",i,j,tab[i][j]);
printf("\n");
}
}
Les Structures
Un tableau designe sous un seul nom un ensemble d’éléments de même
type alors qu’une structure permet de designer sous un seul nom un
ensemble d’éléments pouvant être de type différent.
Définition d’un modèle de structure :
struct point {
int x;
float y;
};
struct étudiant {
char nom[15];
char prenom[15];
int NI;
};
Les Structures
Un tableau designe sous un seul nom un ensemble d’éléments de même
type alors qu’une structure permet de designer sous un seul nom un
ensemble d’éléments pouvant être de type différent.
Définition d’un modèle de structure :
struct point {
int x;
float y;
};
struct étudiant {
char nom[15];
char prenom[15];
int NI;
};
Les fichiers
Dans certaine application, il est nécessaire de traiter des données
comportants exclusivement des séquences de caractères.
ces données peuvent représenter par exemple:
Les instructions d’un programme.
le texte d’un rapport de laboratoire.
Une saisie de nombres correspondant à des mesures prises au cours d’une
expériences.
..., etc.
Les fichiers
Dans certaine application, il est nécessaire de traiter des données
comportants exclusivement des séquences de caractères.
ces données peuvent représenter par exemple:
Les instructions d’un programme.
le texte d’un rapport de laboratoire.
Une saisie de nombres correspondant à des mesures prises au cours d’une
expériences.
..., etc.
Les fichiers
Dans certaine application, il est nécessaire de traiter des données
comportants exclusivement des séquences de caractères.
ces données peuvent représenter par exemple:
Les instructions d’un programme.
le texte d’un rapport de laboratoire.
Une saisie de nombres correspondant à des mesures prises au cours d’une
expériences.
..., etc.
Les fichiers
Dans certaine application, il est nécessaire de traiter des données
comportants exclusivement des séquences de caractères.
ces données peuvent représenter par exemple:
Les instructions d’un programme.
le texte d’un rapport de laboratoire.
Une saisie de nombres correspondant à des mesures prises au cours d’une
expériences.
..., etc.