Langage C Chapitre I: Initiation à la programmation en C

Slides:



Advertisements
Présentations similaires
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Structure de base des programmes en C.
Advertisements

GEF 243B Programmation informatique appliquée
Premier programme en C :
La boucle for : init7.c et init71.c
Introduction au Langage C,C++
A RECUPERER EN ENTRANT Le polycopié de Caml Partie 1
Introduction Langage très répandu Noyau Linux VLC … Des avantages indéniables mais aussi des contraintes ! Ceci nest quun rapide tour.
Introduction au langage C
Algorithmique Résume.
Jacques Lonchamp IUT Nancy Charlemagne – DUT Informatique 1A
C.
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance
M. BENJELLOUN : Info II Mohammed BENJELLOUN Service dInformatique Faculté Polytechnique de Mons
Paramètres et pointeurs
Introduction : Compilation et Traduction
ESIEE Paris © Denis BUREAU I N Initiation à la programmation avec le langage Java.
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Cours Visual Basic pour Application
CYCLE 1 : Saisir – Afficher – Données Afficher du texte sur lécran 1- Rôle du printf() 2- Syntaxe du printf() 3- Exécution du printf() par le CPU.
Les bases de l’Algorithmique
Principes de programmation (suite)
Langage C Révision.
Initiation à la programmation et algorithmique
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Partie 1 Etude de l'existant
Récursivité.
Démarche de résolution de problèmes
Algorithmique et Programmation
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Quest-ce quune classe dallocation? Une classe dallocation détermine la portée et la durée de vie dun objet ou dune fonction.
Introduction à la programmation (Java)
Introduction au langage PHP Réfs : Chap 3 p 49. Présentation PHP (Hypertext PreProcessor) est un langage de développement Web créé en 1994 par Rasmus.
Programmation Initiation Aux Langages C et C++ Bruno Permanne 2006.
CYCLE 1 : Saisir – Afficher – Données Déclarer des Constantes dans un programme 1- Rôle de la déclaration de constante 2- Syntaxe de la déclaration de.
Bases de la programmation en C++
Les pointeurs Enormément utilisé en C/C++ ! Pourquoi? A quoi ça sert?
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Points importants de la semaine Le préprocesseur. La conversion de types. Les fonctions.
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
LANGAGE C LP A2I IUT St DIE
Types de données fondamentaux
L’essentiel du langage C
Les différents langages de programmation
2.1 - Historique Chapitre 2 : Introduction au langage C++
Logique programmée & Microprocesseurs
Programmer en langage c
9ième Classe (Mardi, 4 novembre) CSI2572. H Nous avons vu comment utiliser les directives #define #ifndef #endif Pour s’assurer de l’inclusion unique.
Cours Architecture des Systèmes Informatiques
Cours 1 1 Java. Cours 1 2 Plan général 1.Introduction 2.Les types primitifs, évaluation d’expressions 3.Instructions for, if…. 4.Introduction de l’objet,
SIF-1053 Architecture des ordinateurs
ALGORITHMIQUE ET PROGRAMMATION C
Un survol du language C.
Module I3 algorithmique et programmation
Introduction au langage C Fonctions et Procédures
Méthodes et outils de conception Introduction à la programmation Paramètre de retour Appel d’une fonction Portée des variables Définition Pourquoi les.
1 École des Mines de Saint-Etienne. 158, cours Fauriel Saint-Etienne Cedex 2. Tél Fax Jean-Jacques Girardot
ISBN Chapitre 10 L'implémentation des sous- programmes.
Introduction au langage C Les entrées-sorties
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
Patricia Renault UPMC 2005/2006
Codage de l’information
Scripts et fonctions Instructions de contrôle
Chapitre 4 La représentation des nombres.
Philippe Gandy - 1 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Les outils nécessaires au programmeur
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Introduction au langage C
Informatique 2A Langage C 1 ère séance.
Transcription de la présentation:

Langage C Chapitre I: Initiation à la programmation en C BIZAGWIRA Honoré bizagwira@sancy-ubpclermont.fr Université Blaise Pascal

Descriptions et objectifs du cours Le cours s’adresse aux débutants à la programmation. Il ne demande pas de pré-réquis particulier, ni de connaissances mathématiques poussées. Néanmoins, il est nécessaire d'avoir un bon sens de la logique et d'être méthodique. L’objectif : Apprendre les bases de la programmation Se familiariser aux vocabulaires de programmation Ecrire et compiler un programme en langage C

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

Rappels sur le fonctionnement d’un ordinateur L’ordinateur est une machine dotée d’un processeur (CPU : Central Processing Unit ou « unité centrale de traitement»). Rôle : Interpréter les instructions traiter les données d'un programme informatique effectuer des calculs : opérations arithmétiques et logiques Un processeur ne comprend que de l'information binaire « langage machine », constituées d'une suite de 0 et de 1.

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

Langages de programmation Introduction Langages de programmation Les langages de programmation permettent à l’humain: Communiquer avec l’ordinateur; de lui transmettre les instructions; de lui demander d’effectuer les actions Classification des langages : Langage de haut niveau (plus proche du langage humain) Exemple : Visual Basic, Java, C/C++ Langage de bas niveau (plus proche du langage machine). Exemple : ASM Langage machine Langage humain C/C++ ASM Visual Basic

Langage C Introduction Inventé dans les années 1972 au laboratoire Bell par Ritchie et Ken Thompson. Le langage C est un langage dit « de moyen niveau ». Plus proche de l’électronique « langage de bas niveau » La conception évoluée comme les langages de hauts niveau. Avantages : Un nombre restreint des concepts, compilateurs et bibliothèques intégrés sur la plus part des architectures, développement des logiciels qui n’auront pas besoin aucun support d’exécution,… Inconvénients : Programmes non portables « le code exécutable dépend de l’ordinateur cible! » pas de programmation orientée objet,…

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

La compilation Compilation et interprétation Le code source : Le texte rédigé par un programmeur, respectant la syntaxe de langage, et représentant les instructions qui doivent être exécutées par le processeur. Il est contenu dans un fichier dont le nom s’achève par l’extension « .c » Le code objet « code compilé »: La traduction du code source en langage machine compréhensible par l’ordinateur. Le compilateur : Le logiciel qui traduit « compile » le code source en binaire. La compilation se déroule en deux phases : (1) Compilation (2) Edition de liens Fichier source Fichier objet Fichier exécutable

L’interprétation Compilation et interprétation Le langage C est langage compilé, qui demande un compilateur pour s’exécuter. Les langages dits interprétés : demandent un logiciel appelé « interpréteur » qui traduit au fur et à mesure les instructions du programme. Ils ne créent pas le code objet ou l’exécutable. leurs codes sont portables, mais plus lents qu’un programme compilé. Ils sont indépendant de tout langage machine. Exemple : MATHLAB, PHP…

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

Structure générale d’un programme C L’exécution séquentielle Structure générale d’un programme C Entête (Directives de préprocesseur) type nom_fonction (paramètres) { Var_declarations; Instructions1; Instructions2; . Instructions n; } Entête : Les bibliothèques type : Le type de données que la fonction retourne. nom_fonction : Le nom de la fonction paramètres : déclaration des paramètres d’entrée de la fonction Var_declarations : des déclarations des variables. instructions : la description des actions effectuées par le programme. Les directives de préprocesseur sont des collection des fichiers des codes sources contenant des codes tout prêt qui permettent d’effectuer des opérations courantes (comme l’affichage…).

Outils nécessaires pour programmer en C L’exécution séquentielle Outils nécessaires pour programmer en C On a besoin : Editeur de texte : pour écrire le code source du programme Un compilateur : pour traduire le code source en binaire Un déboguer : pour pouvoir traquer les erreurs dans notre programme On appelle IDE « Environnement de développement », un logiciel qui combinent les trois fonctions « édition du texte, compilation et débogage ». Exemple : Code::Bloc, Dev C++, Eclipse…

Programme minimum C L’exécution séquentielle Hello world! Entête : #include <stdio.h>, #include <stdlib.h> type int : le type de la fonction main. La fonction retourne un entier. main : Le nom de la fonction principale dans le langage C. printf : La fonction affiche sur l’écran le message qui est entre parenthèses « Hello world ». \n : L’instruction de retour à ligne return 0 : L’instruction retourne 0 pour signifier « tout s’est bien passé » #include <stdio.h> #include <stdlib.h> int main () { printf(’Helloworld! \n ’); return 0;  } Hello world!

L’exécution séquentielle Un programme informatique est une succession d'ordres (liste d'instructions) donnés à l'ordinateur. Les instructions d'un programme sont naturellement exécutées selon leur ordre dans la liste d'instructions. Cette exécution, dans l'ordre de la première instruction à la dernière est appelée "exécution séquentielle". Inconvénients : Impossible d'adapter les instructions exécutées à un contexte. ou de répéter une même instruction en fonction du nombre d‘exécutions souhaitées

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

La mémoire d'un ordinateur Les variables dans le langage C La mémoire d'un ordinateur Les variables servent à stocker les données d'un programme. Notion sur la mémoire d'un ordinateur L'ordinateur a plusieurs types de mémoires. Il a besoin d'avoir une mémoire à la fois rapide (pour récupérer une information très vite) et importante (pour stocker beaucoup de données). Le problème est qu'on est incapables de créer une mémoire qui soit à la fois très rapide et importante.

Les différents types de mémoire d’un ordinateur Les variables dans le langage C Les différents types de mémoire d’un ordinateur de la plus rapide à la plus lente : Les registres La mémoire cache La mémoire vive (appelée aussi RAM ) Le disque dur La mémoire vive est aussi appelée RAM

La déclaration d'une variable Les variables dans le langage C La déclaration d'une variable Règles à suivre pour nommer une variable ll ne peut y avoir que des minuscules, majuscules et des chiffres (abcABC012) ;notre nom de variable doit commencer par une lettre ; les espaces sont interdits. À la place, on peut utiliser le caractère « underscore » _ (C'est le seul caractère différent des lettres et chiffres autorisé ). vous n'avez pas le droit d'utiliser des accents (éàê etc.).

Les variables dans le langage C Les commentaires Les commentaires sont indispensables pour rendre le code d’un programme plus lisible et compréhensible. Les commentaires peuvent être placés à n’importe quel endroit dans le programme. Ils commencent par /* et se terminent par */. /*commentaires*/ Ou // la ligne commentée

La déclaration d'une variable Les variables dans le langage C La déclaration d'une variable Procédure de déclaration d'une variable Il suffit dans l'ordre : d'indiquer le type de la variable que l'on veut créer ; d'insérer un espace ; d'indiquer le nom que vous voulez donner à la variable ; et enfin, de ne pas oublier le point-virgule. Vaut mieux d'initialiser la variable dès qu'on la déclare. Exemple : int nombre_copies; // Déclaration nombre_copies= 0; // Initialisation

Types des variables Les variables dans le langage C signed char int Nom du type Minimum Maximum Contenu de la variable signed char -127 127 Caractères (lettre, chiffre, symbole) codé sur un octet. int -32 767 32 767 Nombre entier positif ou négatif long -2 147 483 647 2 147 483 647 Version « longue » de int occupant davantage en mémoire que int float -1x1037 1x1037 Nombre positif ou négatif décimal. Il représente un les nombres réels double Version « double » float permettant la représentation d’une intervalle encore plus vaste.

Les constantes Les variables dans le langage C Une variable déclarée constante garde la même valeur pendant toute la durée du programme. C'est-à-dire qu'une fois déclarée, vous voudriez que votre variable conserve sa valeur et que personne n'ait le droit de changer ce qu'elle contient. Exemple : const int MIN_NOMBRES_ETUDIANTS = 20;

Afficher le contenu d'une variable Les variables dans le langage C Afficher le contenu d'une variable Exemple : #include <stdio.h> #include <stdlib.h> int main () { const int MIN_NOMBRES_ETUDIANTS = 20; int n_Etudiants; n_Etudiants = 60; // Initialiser à 60 printf(’Le nombre des étudiants : %d \n’,n_Etudiants ); return 0;  } Le nombres des étudiants : 60

Codes des formats Les variables dans le langage C Code Types des données %c Caractères (char) %d Nombre entier (int) %4d Impose d’affiche l’entier sur au moins 4 caractères %e Nombre décimal (float) en notation « exponentielle » (mantisse et exposant) %le Nombre décimal (double) en notation « exponentielle » %Le Nombre décimal (long double) en notation « exponentielle » %f Nombre décimal (long double) en notation « décimale »

Fonctions d’entre/ sortie de base L’en-tête stdio.h contient les déclarations d'un ensemble de fonctions qui gèrent les entrées/sorties des programmes écrits en C La fonction printf printf(chaîne de format [, valeur [, valeur [...]]]) Exemple : int i = 2; printf("Voici la valeur de i : %d.\n", i); La fonction scanf scanf(chaîne de format, &variable [, &variable [...]]); Exemple : int n_etudiants = 0; scanf(“%d", & n_etudiants); printf(“Le nombre des étudiants : %d”, n_etudiants)

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

Les calculs de base Addition int resultat = 0; resultat = 62 + 15; printf(‘62+15 = %d’,resultat); Opération Signe Addition + Soustraction - Multiplication * Division / Modulo % 62 + 15 = 77 Division double resultat = 0; resultat = 63/2; printf(’63 : 2 = %f’,resultat); 63 : 2 = 31.5

Plan Rappels sur l’architecture et le fonctionnement d’un ordinateur Introduction Compilation et interprétation L’exécution séquentielle Les variables dans le langage C Les calculs de base Exercices

Exercices Ecrire un programme qui : Affiche le message : saisis un nombre a: Le nombre doit être affecté à une variable var_a Affiche le message : saisis un nombre b: Le nombre doit être affecté à une variable var_b Effectue la division (a : b), et puis affiche le quotient (à la ligne!). N.B : Pensez à déclarer toutes les variables nécessaires et leurs types correspondant.