=> 1.5 #include <stdio.h> : inclure un fichier dentte ( .h header )qui permet de faire appel aux fonctions standards du langage C ( stdio : standard input output ). Si cette ligne napparait pas dans le programme , la compilation renvoie une erreur didentification des instructions qui suivent .
Premier programme en C : => 1.6 Le dbut de la fonction principale se repre toujours par son nom , soit : main() ou int main() ou void main()
=> 1.8 Les types de variables a,b,calcul , u et v : int a,b,calcul : trois variables dfinies de type entier . ( nombres entiers signs) char u,v : 2 variables dfinies de type caractre ( des symboles ou des nombres entiers ) .
=> 1.7 La fonction principale du programme renvoie ici un entier de valeur gale 0 laide de linstruction return la fin de son excution ( ou de son traitement ) . Linstruction return permet de sortir de la fonction une fois traite .Cest lquivalent dun retour de sous programme du type retlw en langage assembleur ddi aux PIC . Premier programme en C : => 1.9 Le deuxime affichage de u renvoie : A Le deuxime affichage de v renvoie : A cela est cohrent .. Car ces 2 variables ont t dclares comme des caractres ..oui , mais dans le programme u=65 !!
=> 1.10 La fonction printf permet dafficher dans la console les contenus des variables dans diffrents types possibles !! %d : indique que lon affichera un entier mme si la variable visualiser ne lest pas . Il ya donc une conversion !!! %c : indique que lon affichera un charactre mme si la variable visualiser ne lest pas . Dans la table ASCII : Le codage du symbole A est la valeur entire 65 !!
Premier programme en C : => 1.11 En enlevant le \n de chaque printf , on obtient le traitement suivant :
le \n permet deffectuer un retour la ligne aprs chaque traitement daffichage .
Premier programme en C : => 1.12 Le point virgule permet de terminer une ligne dinstruction ldition . Si on loublie , il y a une erreur de compilation . La compilation interprte linstruction comme tant tout ce quelle trouve en attendant de trouver un point virgule . ..cela entraine parfois des messages derreurs qui nont rien avoir avec cet oubli ..
Type de variables : init2.c et init3.c => 2.1 c=66 : aprs lexcution de cette ligne , la valeur entire 66 est affecte la variable c qui est dfinie comme un charactre . .en code ASCII la valeur 66 permet de dfinir le B ! ( juste aprs 65 eh oui cest le A ) . => 2.3 %d et %c dj vu la question 1.10 %x :indique que lon affichera un hexadecimal mme si la variable visualiser ne lest pas . Il ya donc une conversion !!! %o :indique que lon affichera une valeur en base 8 (base octale) mme si la variable visualiser ne lest pas . Il ya donc une conversion !!! Type de variables : init2.c et init3.c => 2.4 Algorigramme de init2.c Dbut Affecter 66 c Afficher c en base 16 Afficher c comme un caractre Afficher c en base 8 (octale) Afficher un commentaire Attendre la saisie d une frappe Fin Afficher c en base 10 Etude dune boucle while : init4.c => 3.1 Les 2 instructions c=getch(); et printf(%c\n,c); permettent de saisir un caractre au clavier et de lafficher dans la console . Si la seconde instruction nexistait pas : la valeur saisie ne serait pas afficher .mais elle est bien affecte la variable c . => 3.2 Le symbole != : signifie diffrent de . Exemple : la condition a!=b renvoie 1 si a est diffrent de b . elle renvoie 0 si a gal b . Etude dune boucle while : init4.c => 3.3 la boucle dowhile : => Faire { instruction 1; instruction 2; ..; instruction n; } tant que (condition est vraie) Instruction 1 Instruction 2 Instruction n Condition est vraie oui non Etude dune boucle while : init4.c => 3.4 Pour sortir de la boucle dowhile : la condition reste vraie si sortie!=s alors on reste dans la boucle . pour que la condition soit fausse .cest dire , sortir de la boucle , il faut que lutilisateur du programme tape sur le clavier s . do { instruction 1; instruction 2; ..; instruction n; } while (sortie !=s) Le programme : Etude dune boucle while : init4.c oui => 3.5 Algorigramme de init4.c Afficher entrer un caractre sortie s ? non Dbut Saisir et charger le caractre dans c Afficher le caractre c Afficher le code ASCII de c Afficher un commentaire Attendre la saisie d une frappe Charger le caractre saisi dans sortie Fin Les rgles de syntaxes de base: // tout ce qui suit sur la ligne est un commentaire. /* */ tout ce qui est entre ces 2 symboles est un commentaire. # annonce une directive de compilation. ; doit toujours terminer une instruction C. { } tout ce qui est entre ces 2 accolades est un seul et mme bloc. main() il doit y avoir au minimum une fonction nomme main qui dfinit le bloc principal du programme . /* Mon premier programme version 1.0 du 17/03/06...*/ #include < stdio.h > #define TOTO 4 main() { int v,somme; v=2; somme=v+TOTO; printf(Bonjour !); printf(La somme est gale de :%d,somme); } /* commentaires */ #include <stdio.h> #define Pi 3.14 main() { Dclaration des variables; Initialisations; Instructions; } Les rgles de syntaxes de base (suite) : Structure gnrale dun programme : Fonction main Types de donnes: int, float, char Oprateurs : = , == , != , || , % , + + for ( ; ;) { . ;} while (condition) { ;} if (condition) { ;} Constante symbolique Appel des fonctions de base du c stdio.h : fichier header Type de variables : init5.c => 5.2 : Tableau des diffrents types de variables => 5.3 : unsigned int : sa taille = 4 octets rservs en mmoire la plage de valeur : de 0 4 294 967 295 ..pour un caractre char : sa taille = 1 octet rserv en mmoire la plage de valeur : de -128 +127 ..un unsigned char : de 0 255 . Type de variables : init5.c => Lvolution des tailles des types des variables : Les types de donnes (simples): Le langage C traite des bits, octets, mots, double mots, et des rels ( nombres dcimaux ) . Les noms des types sont bit, char, short, int , long , float , double. Par dfaut toutes les nombres sont signs (signed). Par contre , les entiers peuvent-tre non-signs (unsigned).
Remarque :On peut passer d'un type un autre par un cast, si cela un sens: int i; /* la variable i est dfini comme tant un entier sign*/ unsigned int k=0xff; /*k=255*/
i = (int) k; // La variable k est convertie en un //entier sign --> i=-1 !!
Les types de donnes (complexes): Les tableaux : donnes de mme type, accs par indexation . Exemple :float temperature[10] ; tableau de 10 cases . Chaque case est un nombre rel (float) . Les diffrentes cases sont accessibles de temperature[0] temperature[9] Les structures: permettent de grouper des variables de types diffrents. Les unions : permettent plusieurs interprtations d'une mme zone mmoire.Cest aussi un regroupement de plusieurs variables . Les exemples de ces 2 derniers types de donnes seront traites dans le projet !!!