Club Informatique VINCI

Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Club Informatique VINCI

Le C.I.V représente un groupement d'étudiants constituant le club informatique de la Grande École Marocaine de l'Informatique et des Réseaux du Télécom VINCI -Rabat-. (L'utilisation de Internet explorer 6/7 n'est pas recommandée, on vous propose Firefox)

Les forums du C.I.V attend vos propositions en ce qui concerne le graphique, les catégories, et les sections.

Connexion

Récupérer mon mot de passe

Sondage

Quel est votre antivirus préféré ?
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left16%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 16% [ 4 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left32%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 32% [ 8 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left0%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 0% [ 0 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left0%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 0% [ 0 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left0%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 0% [ 0 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left36%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 36% [ 9 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left0%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 0% [ 0 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left0%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 0% [ 0 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left8%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 8% [ 2 ]
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_left8%LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Bar_right 8% [ 2 ]

Total des votes : 25

Derniers sujets

» algorithme en langage C
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyJeu 28 Nov - 8:07 par arsenepoutsi

» CCNA version 4 français
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyDim 31 Mar - 15:15 par kadhouceeee

» Trés important " Livre exercices en langage C ( claude delannoy) "
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyJeu 27 Sep - 16:31 par latifa oustouh

» Ulead VideoStudio 11.5.0157.2 Plus + Crack Collection
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyJeu 26 Avr - 9:51 par miloduvi

» Langage IDL(Interface Definition Language)
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyMar 27 Sep - 13:02 par Abdelkhalek Bakkari

» demande cours PHP
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyJeu 2 Juin - 11:23 par elasriahmed

» exemple page web réaliser avec du html et JavaScript
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyLun 30 Mai - 4:05 par ouh.rouchan.zakaria

» cours group2_ 2année 2011
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyDim 20 Mar - 15:35 par El Maligno Angelo

» Cours : Infrastructures Réseaux 2003 Server
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyMar 15 Fév - 6:55 par jettjackson

» cours officiel de CCNA 2
LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) EmptyMar 18 Jan - 13:53 par agares

Qui est en ligne ?

Il y a en tout 5 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 5 Invités

Aucun


[ Voir toute la liste ]


Le record du nombre d'utilisateurs en ligne est de 27 le Lun 3 Juin - 10:16

Statistiques

Nos membres ont posté un total de 1292 messages dans 373 sujets

Nous avons 437 membres enregistrés

L'utilisateur enregistré le plus récent est intellection

Le Deal du moment : -20%
Pack Gigabyte Ecran PC Gamer 27″ LED M27Q ...
Voir le deal
749 €

    LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji)

    El Maligno Angelo
    El Maligno Angelo
    Administrateur
    Administrateur


    Messages : 373
    Points : 6327
    Réputation : 8
    Date d'inscription : 25/04/2009
    Age : 34
    Localisation : ErRabat

    LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji) Empty LES ENTRÉES-SORTIES CONVERSATIONELLES (A.Elghazi/S.Elhajji)

    Message par El Maligno Angelo Mer 30 Sep - 6:14

    Introduction
    Jusqu'ici, nous avons utilisé de façon intuitive les fonctions printf pour afficher des informations à l'écran.
    Nous vous proposons maintenant d'étudier en détail les différentes possibilités de ces fonctions, ce qui
    nous permettra de répondre à des questions telles que :
    • quelles sont les écritures "autorisées" pour des nombres fournis en données ? Que se passe-t-il
    lorsque l'utilisateur ne les respecte pas ?
    • comment organiser les données lorsque l'on mélange les types numériques et les types caractères ?
    • que se produit-il lorsque, en réponse à scanf, on fournit trop ou trop peu d'informations ?
    • comment agir sur la présentation des informations à l'écran ?
    Les possibilités de la fonction printf()
    Nous avons déjà vu que le premier argument de printf est une chaîne de caractères qui spécifie à la fois
    des caractères à afficher tels quels, des "codes de format" repérés par %. Un "code de conversion" (tel que
    c, d ou f) y précise le type de l'information à afficher.
    D'une manière générale, il existe d'autres caractères de conversion soit pour d'autres types de valeurs, soit
    pour agir sur la précision de l'information que l'on affiche. De plus, un code de format peut contenir des
    informations complémentaires agissant sur le "cadrage", le "gabarit" ou la "précision". Ici, nous nous
    limiterons aux possibilités les plus usitées de printf1. Sachez toutefois que le paragraphe 1.2 de l'annexe
    A vous en fournit un panorama complet.
    La syntaxe de printf
    D'une manière générale, nous pouvons dire que l'appel à printf se présente ainsi :
    printf ( format, liste_d'expressions )
    format :
    • constante chaîne (entre " "),
    • pointeur sur une "chaîne de caractères" (cette notion sera étudiée ultérieurement).
    liste_d'expressions : suite d'expressions séparées par des virgules d'un type en accord avec le code format
    correspondant.
    Les principaux codes de conversion
    c char : caractère affiché (convient aussi à short ou à int compte tenu des conversions systématiques)
    d int (convient aussi à char ou à int, compte tenu des conversions systématiques)
    u unsigned int (convient aussi à unsigned char ou à unsigned short, compte tenu des conversions
    systématiques)
    ld long
    lu unsigned long
    Langage C
    12
    f double ou float (compte tenu des conversions systématiques float -> double) écrit en notation
    "décimale" avec six chiffres après le point (par exemple : 1.234500 ou 123.456789)
    Action sur le gabarit d'affichage
    Par défaut, les entiers sont affichés avec le nombre de caractères nécessaires (sans espaces avant ou après).
    Les flottants sont affichés avec six chiffres après le point (aussi bien pour le code e que f).
    Un nombre placé après % dans le code de format précise un gabarit d'affichage, c'est-à-dire un nombre
    minimal de caractères à utiliser. Si le nombre peut s'écrire avec moins de caractères, printf le fera
    précéder d'un nombre suffisant d'espaces ; en revanche, si le nombre ne peut s'afficher convenablement
    dans le gabarit imparti, printf utilisera le nombre de caractères nécessaires.
    Voici quelques exemples, dans lesquels nous fournissons, à la suite d'une instruction printf, à la fois des
    valeurs possibles des expressions à afficher et le résultat obtenu à l'écran. Notez que le symbole ^
    représente un espace.
    printf ("%3d", n) ; /* entier avec 3 caractères minimum */
    • n = 20
    ^20
    • n = 3 ^
    ^3
    • n = 2358
    2358
    • n = -5200
    -5200
    printf ("%f", x) ; /* notation décimale gabarit par défaut (6 chiffres après point) */
    • x = 1.2345
    1.234500
    • x = 12.3456789
    12.345679
    printf ("%10f", x) ; /* notation décimale gabarit mini 10 (toujours 6 chiffres après point) */
    • x = 1.2345
    ^^1.234500
    • x = 12.345
    ^12.345000
    • x = 1.2345E5
    123450.000000
    Actions sur la précision
    Pour les types flottants, on peut spécifier un nombre de chiffres (éventuellement inférieur à 6) après le
    point décimal (aussi bien pour la notation décimale que pour la notation exponentielle). Ce nombre doit
    apparaître, précédé d'un point, avant le code de format (et éventuellement après le gabarit). Voici
    quelques exemples :
    printf ("%10.3f", x) ;
    • x = 1.2345
    ^^^^^1.235
    • x = 1.2345E3
    ^^1234.500
    Langage C
    13
    • x = 1.2345E7
    12345000.000
    En cas d'erreur de programmation
    Deux types d'erreur de programmation peuvent apparaître dans l'emploi de printf.
    1. Code de format en désaccord avec le type de l'expression
    Lorsque le code de format, bien qu'erroné, correspond à une information de même taille (c'est-à-dire
    occupant la même place en mémoire) que celle relative au type de l'expression, les conséquences de
    l'erreur se limitent à une "mauvaise interprétation de l'expression". C'est ce qui se passe, par exemple,
    lorsque l'on écrit une valeur de type int en %u ou une valeur de type unsigned int en %d.
    En revanche, lorsque le code format correspond à une information de taille différente de celle relative au
    type de l'expression, les conséquences sont généralement plus désastreuses, du moins si d'autres valeurs
    doivent être affichées à la suite. En effet, tout se passe alors comme si, dans la "suite d'octets"
    (correspondant aux différentes valeurs à afficher) reçue par printf, le "repérage" des emplacements des
    valeurs suivantes se trouvait soumis à un "décalage".
    2. Nombre de codes de format différent u nombre d'expressions de la liste
    Dans ce cas, il faut savoir que C cherche toujours à satisfaire le contenu du format.
    Ce qui signifie que, si des expressions de la liste n'ont pas de code format, elles ne seront pas affichées.
    C'est le cas dans cette instruction où la valeur de p ne sera pas affichée : printf ("%d", n, p) ;
    En revanche, si vous prévoyez trop de codes de format, les conséquences seront là encore assez
    désastreuses puisque printf cherchera à afficher... n'importe quoi. C'est le cas dans cette instruction où
    deux valeurs seront affichées, la seconde étant (relativement) aléatoire : printf ("%d %d ", n) ;
    La macro putchar
    L'expression :
    putchar (c)
    joue le même rôle que :
    printf ("%c", c) ;
    Les possibilités de la fonction scanf
    La syntaxe de scanf
    D'une manière générale, l'appel de scanf se présente ainsi :
    scanf ( format, liste_d_adresses)
    format :
    -constante chaîne (entre " "),
    -pointeur sur une "chaîne de caractères" (cette notion sera étudiée ultérieurement)
    liste_d_adresses : liste de "lvalue", séparées par des virgules, d'un type en accord avec le code de format
    correspondant.
    Les principaux codes de conversion de scanf
    Pour chaque code de conversion, nous précisons le type de la "lvalue" correspondante.
    Langage C
    14
    c char
    d int
    u unsigned int
    hd short int
    hu unsigned short
    ld long int
    lu unsigned long
    f ou e float écrit indifféremment dans l'une des deux notations : décimale ou exponentielle (avec la lettre
    e ou E)
    lf ou le double avec la même présentation que ci-dessus
    s chaîne de caractères dont on fournit l'adresse (notion qui sera étudiée ultérieurement)
    Remarque :
    Contrairement à ce qui se passait pour printf, il ne peut plus y avoir ici de conversion automatique
    puisque l'argument transmis à scanf est l'adresse d'un emplacement mémoire. C'est ce qui justifie
    l'existence d'un code hd par exemple pour le type short ou encore celle des codes lf et le pour le type
    double.
    Action sur le gabarit
    Comme dans les codes de format de printf, on peut, dans un code de format de scanf, préciser un gabarit.
    Dans ce cas, le traitement d'un code de format s'interrompt soit à la rencontre d'un séparateur, soit lorsque
    le nombre de caractères indiqués a été atteint.
    La macro getchar
    L'expression : c = getchar() joue le même rôle que : scanf ("%c", &c) tout en étant plus rapide puisque ne
    faisant pas appel au mécanisme d'analyse d'un format. Notez bien que getchar utilise le même tampon
    (image d'une ligne) que scanf. En toute rigueur, getchar est une "macro" (comme putchar) dont les
    instructions figurent dans stdio.h. Là encore, l'omission d'une instruction #include appropriée conduit à
    une erreur à l'édition de liens.

      La date/heure actuelle est Jeu 28 Mar - 7:16