Eléments de base du langage C

Slides:



Advertisements
Présentations similaires
Premier programme en C :
Advertisements

La boucle for : init7.c et init71.c
Introduction au Langage C,C++
Introduction Langage très répandu Noyau Linux VLC … Des avantages indéniables mais aussi des contraintes ! Ceci nest quun rapide tour.
Rappels C.
Formation C débutant. Notion de compilation source.c executable Phase de compilation Fichier de texte brut, inexploitable directement par la machine Fichier.
L’ interruption de boucle
Tableaux Certains problèmes nécessitent beaucoup de variables du même type. Exemple : relevé de températures matin et soir dans 10 villes pour 10 jours.
FLSI602 Génie Informatique et Réseaux
Langage C Révision.
Points importants de la semaine Les boucles. Les types arithmétiques. Les opérateurs.
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Base de programmation Script unity en c#.
Développement logiciel pour microcontrôleurs PIC
Instruction sélective switch-case Instruction répétitive do-while For
Miguel Garzon CrUise Lab - SITE. Introduction Data Types and Sizes Constants Logic Operators Type conversions Example.
IFT 6800 Atelier en Technologies d’information
ECP – Option SA Henri Fallon
Plan troisième cours Instruction sélective Instruction répétitive
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
L’essentiel du langage C
Introduction au C.
Les Pointeurs et les Tableaux Statiques et Tableaux Dynamiques
Les adresses des fonctions
SIF-1053 Architecture des ordinateurs
Un survol du language C.
1 Structures des données. 2  Le tableau permettait de désigner sous un seul nom un ensemble de valeurs de même type, chacune d'entre elles étant repérée.
TABLEAUX des POINTEURS TRAITEMENT DE STRUCTURES
Structures de contrôle
Fiabilisation des lectures au clavier. Problèmes liés à scanf: rencontre de caractères invalides Sans arrêt prématuré: compte = scanf(``%d%c``;&n,&c);
PRO-1027 Programmation Scientifique en C
pour les programmeurs en C++ Java 2 Part 1 3 Histoire de Java Projet de connexion des machines: 1991 Le nom Java a été introduit dans un café Développé.
C++ BY AURÉLIEN MODULO MARION. PLAN DES TROIS PRÉSENTATIONS C++ avancé C++ orienté objet Bases de C++
C++ Les fonctions. Présentation Utilité : Dès qu'un programme dépasse la centaine de lignes de code, il est pratique de pouvoir le décomposer en plusieurs.
Tableaux et Pointeurs Chaînes de Caractères Programmation Impérative II.
CINI – Li115 1 Semaine 4 Révisions ● Questions de cours ● Types des expressions ● Déclaration de variables ● Instruction conditionnelle et boucles ● Structure.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Fonctions ● Namespace ● Tests ● Boucles ● Pointeurs, références.
Les chaînes d’opérations. Rappel des principes Ordre de priorité 1- Parenthèse 2- Exposant 3- Multiplication et division 4- Addition et soustraction.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Types et opérations fondamentales ● Tests ● Boucles ● Pointeurs, références.
CINI – Li115 1 Semaine 11 Les pointeurs (suite) ● Tableaux et pointeurs ● Questions sur les pointeurs.
Tableaux en C Mardi 2/05.
Semaine 8 Retour sur les tableaux : fonctions et récursivité
Synthèse TP 2 Codeblock 1 Les objectifs de ce tp sont :
Ajouter le code dans une page html
Introduction au Langage Pascal
Cours de programmation en langage C (Norme ANSI)
Langage C Structure d'un programme Types Lire Ecrire Tester
Eléments d’Informatique Cours11 – Allocation dynamique, listes chaînées Catherine Recanati.
Pointeurs et langage C.
2. Expressions relationnelles et alternatives
Opérateurs Toute donnée informatique est stockée en mémoire sous la forme d'une combinaison de bits (mot machine). Les opérateurs bits permettent de modifier.
Algorithmique et programmation de modèles numériques
AO (Architecture des ordinateurs)
Semaine 11 Les pointeurs (suite)
SIF-1053 Architecture de ordinateurs
Arguments de la ligne de commande
Langages de programmation TP3
IFT1969 Programmation scientifique en C Michel Reid.
Week 1 Lecture 1 Introduction à R L3PRO 2017.
Codage Indenter le code Limiter la portée des variables Traiter les erreurs en premier Utiliser le switch au delà de 3 tests en cascades Ne jamais utiliser.
Notions de pointeurs en C
« Un langage de programmation est une convention pour donner des ordres à un ordinateur. Ce n’est pas censé être obscur, bizarre et plein de pièges subtils.
Programmation en C++ C++ de base
Calcul Scientifique Initiation à SCILB
Eléments de base du langage C
MINISTÈRE DE L’ENSEIGNEMENT SUPÉRIEUR ET DE LA RECHERCHE SCIENTIFIQUE
Cours Programmation en C. Traitement de l’information Catégorie d’information Les données Les résultats Les informations intermédiaires.
Quelle est la valeur de S après exécution des instructions suivantes :
QCM Pointeurs 2 / Q1 On considère la déclaration suivante : char *ptc ; ptc peut contenir : 1) des valeurs de variables de type caractère 2) des adresses.
Le langage C# : Partie 1.
Transcription de la présentation:

Eléments de base du langage C Pour atelier E1 Novembre 2018 j.Callot l.Piedfort

Types de base Les types peuvent être déclarés en: unsigned char 8 bits Caractère 1 octet short 16 bits Entier 2 octet Int 32 bits 16 bits pour Arduino Entier 4 octets Entier 2 octets long float Réel 4 octets void Ensemble vide   Les types peuvent être déclarés en: unsigned Novembre 2018 j.Callot l.Piedfort

Operateurs arithmétiques = assignation + addition - soustraction * multiplication / division % modulo Novembre 2018 j.Callot l.Piedfort

Operateurs logiques bit à bit & et | ou ^ ou exclusif ~ complément à 1 >> décalage droit << décalage gauche Novembre 2018 j.Callot l.Piedfort

Opérateurs relationnels > strictement supérieur < strictement inferieur >= supérieur ou égal <= inferieur ou égal == égal != différent Retournent vrai ou faux (1 ou 0) Novembre 2018 j.Callot l.Piedfort

Operateurs logiques booléens && et logique || ou logique ! non If ((i>0) && ( i<9)) //vrai si les 2 conditions sont vraies { } If ((i>0) || ( j<0)) //vrai si au moins 1 condition est vraie If (!x) //vrai si x=0 Novembre 2018 j.Callot l.Piedfort

Caractères ‘c’ caractère c " chaine de caractères " \n passer a la ligne suivante \r retour en début de ligne \0 fin de chaine printf ("  \n \r Hello Word " ); Suivant l’hyperterminal \n peut suffire Novembre 2018 j.Callot l.Piedfort

Format d’impression char car='A'; int i=10; float fl=15.7; printf ("\n car= %c i_deci= %d i_hex= %0x fl= %f",car,i,i,fl ); Resultat car= A i_deci= 10 i_hex= a fl= 15.700000 Novembre 2018 j.Callot l.Piedfort

Le if int note=15; if(note == 20) { printf("\n 1_felicitations"); } else if ((note >=15) && (note<20 )) printf("\n continuer a faire des efforts"); else printf("\n il faut travailler plus"); Resultat continuer a faire des efforts Novembre 2018 j.Callot l.Piedfort

Boucle for int i=0; for(i=0;i<5;i++) { printf("\n i= %d",i); Résultat i= 0 i= 1 i= 2 i= 3 i= 4 Novembre 2018 j.Callot l.Piedfort

While int i=0; while( i<5) { printf("\n i= %d",i); i++; } Résultat Novembre 2018 j.Callot l.Piedfort

Boucles infinies for(;;) { ………..; } While(1) Novembre 2018 j.Callot l.Piedfort

Do while int i=0; do { printf("\n valeur de i= %d",i); i++; } Resultat valeur de i= 0 valeur de i= 1 valeur de i= 2 valeur de i= 3 valeur de i= 4 Novembre 2018 j.Callot l.Piedfort

Le scanf int i; printf("\n\n entrer un nombre en Hexa\n"); scanf("%0x",&i); printf("\n i= %d",i); Résultat entrer un nombre en Hexa ff i= 255 Novembre 2018 j.Callot l.Piedfort

switch int i; for(;;) { printf("\n entrer un nombre entre 1 et 3\n"); scanf("%d", &i); switch(i) case 1 : printf("\n i= 1"); break; } case 2 : printf("\n i= 2"); case 3 : { printf("\n i= 3"); break; } default: printf("\n erreur"); }//fin switch }//fin for Novembre 2018 j.Callot l.Piedfort

Résultat switch entrer un nombre entre 1 et 3 2 i= 2 1 i= 1 5 erreur Novembre 2018 j.Callot l.Piedfort

Tableau int i; int tab[4]={5,6,7,8}; for (i=0;i<4;i++) { printf("\n val de tab[i]= %d",tab[i]); } Résultat val de tab[i]= 5 val de tab[i]= 6 val de tab[i]= 7 val de tab[i]= 8 Novembre 2018 j.Callot l.Piedfort

Pointeur Int i=3;//déclaration d’un entier valant 3 Int *p; //déclaration d’un pointeur sur un entier P= &i; //p prend la valeur: adresse de i *p lit la valeur pointée par p, donc la valeur de i Novembre 2018 j.Callot l.Piedfort

Fonction type nom_fonction (type arg1,type arg 2…..) Le prototype de la fonction doit être défini avant le main Une fonction se termine par Return si fonction de type void Return(expression) type # void Novembre 2018 j.Callot l.Piedfort

Exemple de fonction int SOM(int,int); //prototype void Main_task(uint32_t initial_data) { int a=5, b=2,c=0; c=SOM(a,b); //appel de la fonction printf("\n valeur de c= %d",c); } int SOM(int x,int y) int res; res=x+y; return(res); Resultat valeur de c= 7 Novembre 2018 j.Callot l.Piedfort

Spécificités environnement Arduino et Energia Novembre 2018 j.Callot l.Piedfort

IDE Fonction setup() Sert a la configuration du hardware (pins I/O, liaison série, interruptions…) Fonction loop() Exécutée en permanence Novembre 2018 j.Callot l.Piedfort

Energia Novembre 2018 j.Callot l.Piedfort

Variable locale Novembre 2018 j.Callot l.Piedfort

Variable globale Novembre 2018 j.Callot l.Piedfort

Variable locales et while(1) Novembre 2018 j.Callot l.Piedfort

Fonction som Novembre 2018 j.Callot l.Piedfort