1 PROGRAMMATION EN C EHTP / Filière GI Malika ADDOU 2010 -2011 1 PROGRAMMATION
1 PROGRAMMATION EN C EHTP / Filière GI Malika ADDOU 2010 -2011 1 PROGRAMMATION EN C Objectifs du cours M. ADDOU 2 PROGRAMMATION EN C Maîtriser un langage de programmation structuré structuré Acquérir les bonnes pratiques de la programmation structurée et les grands principes de la programmation impérative Se familiariser avec le langage C Se familiariser avec un environnement de développement intégré C/C++ Être capable de s’adapter à un langage de programmation impératif autre que C. M. ADDOU 3 PROGRAMMATION EN C Module Élément de module Quota Horaire Note Module = 75% * Programmation + 25% * Projet Techniques de Programmation Programmation en Langage C 52 Projet C 12 M. ADDOU 4 Programmation = 30% * Contrôle + 40% * Examen + 30% TP 2 PROGRAMMATION EN C Plan INTRODUCTION À LA PROGRAMMATION PRÉSENTATION DU LANGAGE C CONCEPTS DE BASE OPERATEURS ET EXPRESSIONS STRUCTURES DE CONTROLE VARIABLES STRUCTURÉES CHAÎNES DE CARACTÈRES PRÉPROCESSEUR NOTION DE SOUS-PROGRAMME STRUCTURES DE DONNÉES TRAITEMENT DES FICHIERS M. ADDOU 5 PROGRAMMATION EN C INTRODUCTION À LA PROGRAMMATION M. ADDOU 6 INTRODUCTION À LA PROGRAMMATION 1) Notion de programme Programme : Programme : Suite de commandes, de directives ou d’instructions permettant de définir et d’exécuter sur ordinateur un traitement pour résoudre un problème donné Programmation : M. ADDOU Ensemble d’activités permettant d’écrire des programmes (ou des logiciels ) à l’aide d’un langage de programmation Autre appellation : codage (rédaction du code source d’un logiciel) 7 INTRODUCTION À LA PROGRAMMATION Logiciel : Application ou ensemble de programmes permettant à un Application ou ensemble de programmes permettant à un ordinateur ou à un système informatique d'assurer une tâche ou une fonction donnée Rq. Qualités des programmes : clarté, simplicité, modularité, é tili bilité t ibilité M. ADDOU réutilisabilité, extensibilité Phases de production d’un logiciel : Analyse , conception, programmation, test, validation 8 3 INTRODUCTION À LA PROGRAMMATION Exemples de logiciels : - Systèmes d’exploitation : Unix, Linux, Windows XP, Vista, … - Compilateurs : Pascal, C, C++, Java, … - Progiciels : Traitement de texte Ex. Word Tableur Ex. Excel Présentation assistée Ex. PowerPoint Dessin assisté Ex. Autocad Multimédia Ex Photoshop M. ADDOU Multimédia Ex. Photoshop Navigateur Web Ex. Explorer - Applications spécifiques: Logiciel de gestion de la relation client Logiciel de comptabilité Logiciel de gestion des stocks … 9 Compilateurs (de Pascal, C/C++, Java, …) INTRODUCTION À LA PROGRAMMATION Organisation des logiciels sur ordinateur : ( , , , ) Interpréteur de macro instruction Système d’exploitation Machine Interpréteurs (de commandes du système d’exploitation, Java Virtual Machine, …) Machine M. ADDOU 10 INTRODUCTION À LA PROGRAMMATION 2) Méthodologies de programmation Années 50 et 60 : Programmation non structurée (principale préoccupation : rapidité d'exécution) Fin des années 60 : Programmation procédurale (Programmation structurée, analyse descendante , raffinement progressif) Fin des années 70: Programmation orientée données (usage de structures de données abstraites) Milieu des années 80: Programmation orientée objets M. ADDOU Milieu des années 80: Programmation orientée objets (Données abstraites, attachement dynamique, héritage, polymorphisme) Années 90 : Programmation orientée processus (Programmation parallèle) Milieu des années 90 : Programmation orientée agents (intelligence artificielle, systèmes distribués) 11 INTRODUCTION À LA PROGRAMMATION 3) Environnement de programmation Ensemble d'outils utilisés pour développer un logiciel Ex. Système d’exploitation (Unix, Linux, Windows XP, Vista, …) M. ADDOU Environnement de développement intégré (IDE) (intégrant des outils Ex. système de gestion de fichier, éditeur de texte, linker, compilateur, utilitaires de correction de programme, aide à la programmation d’interfaces graphiques, …) 12 4 INTRODUCTION À LA PROGRAMMATION Exemples d’IDE : • Micro Soft Visual Studio (Visual C/C++ Visual C/C++ • Micro Soft Visual Studio (Visual C/C++, Visual C/C++ Express, C#, J#, VB.Net, …) • CodeBlocks (C/C++, …) • Dev C++ (C/C++, …) M. ADDOU • Borland C++ (C/C++, …) • Netbeans (C/C++, Java SE, Java EE, Java ME, JavaScript, PHP, UML, XML, AJAX, …) • … 13 INTRODUCTION À LA PROGRAMMATION 4) Langages de programmation Langage : Ensemble d’éléments et de règles permettant d’écrire des programmes compréhensibles par un ordinateur Niveau d’un langage suivant sa proximité de la machine : - langage « bas niveau » proche du hardware, difficile à écrire, code fastidieux (Ex. langage machine, langage symbolique, bytecode de JVM) M. ADDOU - langage « haut niveau » (ou évolué) proche de la langue naturelle, programmation facile, lisible, modulaire, portable (Ex. C/C++, Java, Pascal, …) Rq. C et C++ peuvent se comporter aussi comme des langages « bas niveau » pour interagir directement avec la partie hardware 14 INTRODUCTION À LA PROGRAMMATION Catégorie d’un langage : • Impératif : (basé sur les variables affectations séquences et itérations) (basé sur les variables, affectations, séquences et itérations) Ex. C, Pascal • Fonctionnel : (basé sur la récursivité : application d’une fonction à des paramètres pouvant faire appel à cette même fonction) Ex. LISP, Scheme • Logique (b é d l ti l i é it d d M. ADDOU (basé sur des relations logiques écrites dans un ordre quelconque) Ex. Prolog • Orienté objet (basé sur la notion d’héritage) Ex. C++, Java 15 INTRODUCTION À LA PROGRAMMATION • Langage de balisage Ex. HTML, XHTML , • Langage de script Ex. PHP, JavaScript Domaines d’application d’un langage : • Scientifique : Ex. Fortran • Gestion : Ex COBOL M. ADDOU • Gestion : Ex. COBOL • Intelligence artificielle : Ex. LISP, Prolog • Programmation système : Ex. C/C++ • Web : Ex. XHTML, PHP, JavaScript, Java 16 5 INTRODUCTION À LA PROGRAMMATION Portabilité d’un langage Vs généralité : • Langage portable : possibilité d’utiliser un même programme sur des plateformes différentes Unix/Linux, Windows, … (standardisation) M. ADDOU • Langage général : possibilité d’utiliser un même programme pour une large gamme d'applications 17 INTRODUCTION À LA PROGRAMMATION 5) Implémentation d’un programme C il ti l ( d ) é it Compilation : le programme (code source) écrit en langage de haut niveau est traduit en code compréhensible par la machine (langage machine) avant l'exécution (trad ction lente e éc tion rapide) M. ADDOU (traduction lente, exécution rapide) Ex. de langages compilés : Pascal, C/C++, Fortran, Java, … 18 INTRODUCTION À LA PROGRAMMATION Programme source Compilation Compilateur source Programme Analyse Traduction M. ADDOU 19 Programme compilé Machine Résultats Données INTRODUCTION À LA PROGRAMMATION Interprétation : les instructions du programme sont interprétées une à une et exécutées par un programme é i l l'i é ( é i l l spécial « l'interpréteur » (exécution plus lente, espace mémoire requis plus grand) Ex. de langages interprétés : Basic, Lisp, Prolog, PHP, JavaScript, … Rq. M. ADDOU - Un interpréteur crée (simule) une machine virtuelle - En exécution, une machine reçoit un langage bas niveau (langage machine), par contre la machine virtuelle (simulée par l’interpréteur) reçoit un langage haut niveau (langage évolué) 20 6 INTRODUCTION À LA PROGRAMMATION P Interprétation Interpréteur (Machine Virtuelle) Programme source Analyse Données M. ADDOU 21 Interprétation Résultats INTRODUCTION À LA PROGRAMMATION Implémentation hybride : le programme est traduit dans un langage intermédiaire (bytecode) facilement un langage intermédiaire (bytecode) facilement interprétable (Compromis entre le compilé et l’interprété, plus rapide qu’une simple interprétation) Ex Java Virtual Machine M. ADDOU Ex. Java Virtual Machine 22 INTRODUCTION À LA PROGRAMMATION P Implémentation hybride B t C d Compilateur Programme source Analyse Interpréteur (Machine Virtuelle) ByteCode Analyse Données M. ADDOU 23 Traduction Interprétation Résultats PROGRAMMATION EN C PRÉSENTATION DU LANGAGE C M. ADDOU 24 7 PRÉSENTATION DU LANGAGE C 1) Caractéristiques du langage C Langage de programmation conçu en 1972 par Dennie Ritchie Langage évolué qui permet d'exécuter des opérations de bas niveau et de haut niveau L t t é t bl ffi i t M. ADDOU Langage structuré, portable, efficace, puissant Langage polyvalent (programmation système, développement de systèmes d'exploitation, d’applications scientifiques et de gestion) 25 PRÉSENTATION DU LANGAGE C 2) Jeu de caractères 26 lettres de l'alphabet (A … Z et a … z) 10 chiffres (0 … 9) Des caractères spéciaux : + - * / % = > < ! | & M. ADDOU (espace) . , : ; ‘ " _ \ $ ? # ( ) [ ] { } \n (retour à la ligne) \t (tabulation) \b (backspace) … 26 PRÉSENTATION DU LANGAGE C 3) Identificateurs Identificateur : nom donné dans un programme à : p g • une variable • un tableau • une fonction Un identificateur est formé de lettres, de chiffres et/ou du M. ADDOU caractère ‘‘_’’ pour plus de lisibilité (au maximum 31 caractères minuscules et majuscules). Le 1er caractère doit obligatoirement être une lettre ou le caractère ‘‘_’’. 27 PRÉSENTATION DU LANGAGE C Les mot-clés suivants sont réservés : auto extern sizeof break float static case for auto extern sizeof break float static case for struct char goto switch const if typedef continue int union default long unsigned do register void double return volatile else short uploads/Industriel/ programmation-c-25-11.pdf
Documents similaires










-
26
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mai 30, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 0.9329MB