PLAN DU COURS ENTRÉE SORTIE FONCTION PRINTF. Fonction de la bibliothèque stdio.h. Affichage d'un texte:



Documents pareils
1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Programmation système I Les entrées/sorties

Introduction au langage C

Le langage C. Séance n 4

Rappels Entrées -Sorties

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Algorithmique et Programmation, IMA

Les fichiers. Chapitre 4

Les chaînes de caractères

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr


1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia

SUPPORT DE COURS. Langage C

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

INITIATION A LA PROGRAMMATION

Programmation en langage C

I. Introduction aux fonctions : les fonctions standards

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Programmation Classique en langage C

Java Licence Professionnelle CISII,

Le prototype de la fonction main()

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

Introduction au Langage de Programmation C

BTS IRIS Cours et Travaux Pratiques. Programmation C. A. Lebret, TSIRIS, Lycée Diderot, 1995/06. en conformité avec le référentiel du BTS IRIS

Initiation. àl algorithmique et à la programmation. en C

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Langage Éric Guérin 5 octobre 2010

Les structures. Chapitre 3

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Programmation C++ (débutant)/instructions for, while et do...while

ACTIVITÉ DE PROGRAMMATION

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Bases de programmation. Cours 5. Structurer les données

COMPARAISONDESLANGAGESC, C++, JAVA ET

Les structures de données. Rajae El Ouazzani

Brefs rappels sur la pile et le tas (Stack. / Heap) et les pointeurs

Programmation en langage C Eléments de syntaxe

INF111. Initiation à la programmation impérative en C amini/cours/l1/inf111/ Massih-Reza Amini

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

MINIMUM. connaissances nécessaires à la programmation des microcontrôleurs PIC18 en langage C (une introduction au langage c A.N.S.

Langage C. Patrick Corde. 22 juin Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin / 289

COURS D'INFORMATIQUE: LANGAGE C NOTES DE COURS

Chapitre 1 : La gestion dynamique de la mémoire

Programmation impérative

Compression de Données - Algorithme de Huffman Document de Conception

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Chap III : Les tableaux

BASES DE DONNEES TP POSTGRESQL

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

Conventions d écriture et outils de mise au point

Plan du cours. Historique du langage Nouveautés de Java 7

Cours Programmation Système

Introduction à l algorithmique et à la programmation M1102 CM n 3

Le Langage C Licence Professionnelle Qualité Logiciel Pr. Mouad BEN MAMOUN ben_mamoun@fsr.ac.ma Année universitaire 2011/2012

COURS et TP DE LANGAGE C++

Initiation à la programmation en Python

Programmation en C - Sommaire

UE C avancé cours 1: introduction et révisions

PROJET ALGORITHMIQUE ET PROGRAMMATION II

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski

Notions de Langage C

Travaux Dirigés n 1 : chaînes de caractères

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Cours de programmation avancée. Le langage C. Université du Luxembourg

MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Outils pour la pratique

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

UE Programmation Impérative Licence 2ème Année

Cours de Système : Gestion de Fichiers

Claude Delannoy. 3 e édition C++

Programmation système de commandes en C

Programmation C. J.-F. Lalande. 15 novembre 2012

Problèmes liés à la concurrence

Programmer en JAVA. par Tama

Cours 14 Les fichiers

Chapitre 10. Les interfaces Comparable et Comparator 1

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Derrière toi Une machine virtuelle!

La programmation des PIC en C. Les fonctions, les interruptions.

Logiciel de base. Première année ENSIMAG

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Algorithmique, Structures de données et langage C

Architecture des ordinateurs

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

Analyse de sécurité de logiciels système par typage statique

Cours 6 : Tubes anonymes et nommés

Introduction à la Programmation Parallèle: MPI

Cours d Algorithmique et de Langage C v 3.0

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Transcription:

PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, Tableaux, opérateurs Entrées sorties de base Structures de contrôle Algorithmes de recherche Algorithmes de Tri Insertion-Fusion Les pointeurs Procédures et fonctions les types composés Allocation dynamique Listes Chaînées 85 ENTRÉE SORTIE FONCTION PRINTF Fonction de la bibliothèque stdio.h. Affichage d'un texte: /* pas de retour à la ligne du curseur après l'affichage, */ printf("bonjour"); /* affichage du texte, puis retour à la ligne du curseur. */ printf("bonjour\n"); Affichage d une variable La fonction printf exige l'utilisation de formats de sortie, printf("%format",nom_de_variable); Formats de sortie : %d affichage en décimal (entiers de type int), %x affichage en hexadécimal (entiers de type int), %u affichage en décimal (entiers de type unsigned int), %f affichage d un réel 86 1

ENTRÉE SORTIE SORTIE FONCTION PRINTF Affichage multiple. printf(«%format1 %format2...%formatn",var1,var2,varn); Exemple: #include <stdio.h> void main() char lec='a'; int lea= 10; printf("lea = %d lec = %c \n",lea,lec); 87 ENTRÉE SORTIE SORTIE FONCTIONS PUTCHAR ET PUTS putchar : affichage d un caractère : char lecar; putchar(lecar); équivalent à printf("%c\n", lecar); puts : affichage d un texte puts("bonjour"); est équivalent à printf("bonjour\n"); 88 2

ENTRÉE SORTIE ENTRÉE FONCTION SCANF Scanf: bibliothèque stdio.h saisie clavier de n'importe quel type de variable. les variables à saisir sont formatées le nom de la variable est précédé du symbole & La saisie (avec echo) s'arrête avec "RETURN" (c'est à dire LF), Tous les éléments saisis après un espace (espace, tabulation) sont ignorés. (gets) Exemples char lecar; int leentier; float lereel; scanf("%c",&lecar); /* saisie d'un caractère */ scanf("%d",&leentier); /* saisie d'un nombre entier en décimal */ scanf("%f",&lereel); /* saisie d'un nombre réel */ 89 ENTRÉE SORTIE ENTRÉE FONCTIONS GETCH, GETCHAR getch: bibliothèque conio.h Saisie d un cractère au clavier (sans écho à l écran) Exemple: char lealpha; printf("entrer un caractere (attention pas de return) "); lealpha = getch(); printf("\nvoici CE CARACTERE: %c",lealpha); getchar: bibliothèque stdio.h Saisie d un cractère au clavier avec écho à l écran Exemple: char lealpha; printf("entrer un caractere: "); lec = getchar(); 90 3

ENTRÉES SORTIES DE BASE FLUX Notion de flux d entrée Lorsque l'on saisit au clavier une suite de caractères terminés par "RETURN" ces caractères sont rangés dans un tampon (ou buffer) de type FIFO (First In/First Out), le dernier caractère rangé dans le tampon est LF (code ASCII 0x0A). Cette suite de caractères est appelée flux d'entrée. La taille du tampon dépend de la machine et du compilateur utilisés. 91 ENTRÉES SORTIES DE BASE FLUX Comportement de la fonction scanf Si le tampon est vide, tout se passe comme précédemment décrit. si le tampon n'est pas vide : teste le premier élément, s il y a correspondance au format attendu, le tampon perd cet élément et la variable en prend la valeur. Tout caractère ou nombre saisi au clavier et non pris en compte par la fonction scanf est rangé dans le tampon. Remarque : la fonction getchar () utilise le flux d entrée exactement comme scanf 92 4

ENTRÉES SORTIES DE BASE FLUX Exemple 1 #include <stdio.h> void main() char lecar1,lecar2; printf("entrer un caractere: "); scanf("%c",&lecar1); scanf("%c",&lecar2); Execution du programme 93 ENTRÉES SORTIES DE BASE LA FONCTION FFLUSH la fonction fflush(stdin) permet de vider le tampon d'entrée. En l'invoquant après un appel à scanf, on se débarrasse des problèmes de flux d'entrée. 94 5

PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, Tableaux, opérateurs Entrées sorties de base Structures de contrôle Algorithmes de recherche Algorithmes de Tri Insertion-Fusion Les pointeurs Procédures et fonctions les types composés Allocation dynamique Listes Chaînées 95 SCHÉMA ALTERNATIF if (expression).....; if (expression)... ; /* bloc 1 d'instructions */ else /* bloc 2 d'instructions */ Expressions composées : connecteurs logiques NON (!), ET(&&), OU( ) if ((expression1) && (expression2)) " si l'expression1 ET l'expression2 sont différentes de 0 (VRAI) " if ((expression1) (expression2)) " si l'expression1 OU l'expression2 est vraie" if (!(expression1)) " si l'expression1 est fausse " Toutes les combinaisons sont possibles entre ces expressions. 96 6

SCHÉMA ALTERNATIF Autre structure alternative switch(variable) /* de type char ou int */ case valeur1:...;...; case valeur2:...;...; etc... default:...; aucune des valeurs précédentes exécuter ce bloc d'instructions, pas de "break" ici. le bloc...; "default" n'est pas obligatoire. 97 SCHÉMA ALTERNATIF Exemple : Cette instruction est commode pour fabriquer des "menus": char lechoix; printf("liste par groupe taper 1\n"); printf("liste alphabetique taper 2\n"); printf("pour sortir taper S\n"); printf("\nvotre choix: "); lechoix = getchar(); switch(lechoix) case'1':...;...; case '2':...;...; case 'S': printf("\nfin du programme..."); default: printf("\nce choix n'est pas prevu "); 98 7

SCHÉMA RÉPÉTITIF Exercice Ecrire un programme permettant de saisir un nombre entier positif en effectuant le contrôle sur la saisie. int lenb; Correct à condition que l utilisateur ne se trompe qu une printf( "Tapez un nombre positif" ); seule fois.. scanf(«%d», &lenb); if(lenb <0) printf("saisie erronnée. Recommencez\n»); scanf(«%d», &lenb);. 99 SCHÉMA RÉPÉTITIF Schéma répétitif do while Schéma répétitif while. do /* bloc d'instructions */ while (expression); Schéma for (--;--;--).. for(i = 0 ; i<10 ; i++) while (expression) /* bloc d'instructions */ for(initialisation; condition de continuité ; modification)../* bloc d'instructions */ 100 8