Cours programmation en langage C - Chapitre 3 : Les entrées sorties

Page 1 sur 3Lecteur de document UniversityLib

Cours programmation en langage C - Chapitre 3 : Les entrées sorties

Computer Science · course

Voir tous les documents en programmation

École Supérieure de Technologie

et d’Informatique

A.U. 2011/2012

Cours programmation en langage C

Chapitre 3 : Les entrées sorties (3 pages)

Licence Informatique Appliquée 1ère année

(cid:1) La bibliothèque standard <stdio> contient un ensemble de fonctions qui assurent la

communication de la machine avec le monde extérieur

(cid:1) printf() écriture formatée de données

scanf() lecture formatée de données

putchar() écriture d'un caractère

getchar() lecture d'un caractère

(cid:1) printf("<format>",<Expr1>,<Expr2>, ... )

o "<format>" : format de représentation

o <Expr1>,... : variables et expressions dont les valeurs sont à représenter

SYMBOLE

%d ou %i

%u

%o

%x

%c

%f

%e

%s

TYPE

int

int

int

int

int

double

double

char*

IMPRESSION COMME

entier relatif

Publicité

entier naturel (unsigned)

entier exprimé en octal

entier exprimé en hexadécimal

caractère

rationnel en notation décimale

rationnel en notation scientifique

chaîne de caractères

Quelques caractéristiques de printf

(cid:1) printf(« %3d », n);

n=20 => ^20

n=3 => ^^3

// cadrage à droite (par défaut)

(cid:1) printf(« %-3d », n); // cadrage à gauche

n=20 => 20^

n=3 => 3^^

Exemple 1:

#include<stdio.h>

void main()

{

int i=3;

printf("%d%d%d",i,i,i);

}

=> exécution : 333

Wiem Yaiche Elleuch chapitre 3

1

Exemple 2:

#include<stdio.h>

void main()

{

int i=3;

printf("%3d%3d%3d",i,i,i);

}

=> exécution : 3 3 3

Exemple 3:

#include<stdio.h>

Publicité

void main()

{

int i=1234567789;

printf("%3d %3d %3d",i,i,i);

}

=> exécution : 1234567789 1234567789 1234567789

Exemple 4:

#include<stdio.h>

void main()

{

float x=12.5;

printf("%f %f",x,x);

}

=> exécution : 12.500000 12.500000

Exemple 5:

#include<stdio.h>

void main()

{

float x=12.5;

printf("%5.2f %5.2f",x,x);

}

=> exécution : 12.50 12.50

scanf("<format>",<AdrVar1>,<AdrVar2>, ...)

(cid:2) "<format>" : format de lecture des données

(cid:2) <AdrVar1>,... : adresses des variables auxquelles les données seront

attribuées

(cid:1) La fonction scanf reçoit ses données à partir du fichier d'entrée standard stdin (par

défaut le clavier).

(cid:1) La chaîne de format détermine comment les données reçues doivent être interprétées.

(cid:1) Les données reçues correctement sont mémorisées successivement aux adresses

indiquées par <AdrVar1>,... .

(cid:1) L'adresse d'une variable est indiquée par le nom de la variable précédé du signe &.

(cid:1) Pour tous les spécificateurs, nous pouvons indiquer la largeur maximale du champ à

évaluer pour une donnée. Les chiffres qui passent au-delà du champ défini sont

attribués à la prochaine variable qui sera lue

Publicité

(cid:1) Soient les instructions:

Wiem Yaiche Elleuch chapitre 3

2

int A,B;

scanf("%4d%2d", &A, &B);

1234567 => A=1234 B=56

(cid:1)

le chiffre 7 sera gardé pour la prochaine instruction de lecture.

SYMBOLE LECTURE D'UN(E)

%d ou %i entier relatif

%u

%o

%b

%c

%s

entier naturel (unsigned)

entier exprimé en octal

entier exprimé en hexadécimal

caractère

chaîne de caractères

rationnel en notation décimale ou exponentielle

(scientifique)

%f ou %e

TYPE

int*

int*

int*

int*

char*

char*

float*

Écriture d’un caractère

putchar('a'); affiche à l’écran a

Exemples

char A = 225;

Publicité

char B = '\a';

int C = '\a';

putchar('x'); / affiche la lettre x /

putchar('?');

putchar('\n');

putchar(65);

putchar(A);

putchar(B); / beep sonore /

/ beep sonore /

putchar(C);

/ affiche le symbole ? /

/ retour à la ligne /

/ affiche le symbole ayant le code ASCII 65 => A /

/ affiche la lettre ayant le code ASCII 225 => ß /

(cid:1) Une fonction plus souvent utilisée que putchar est la fonction getchar, qui lit le

prochain caractère du clavier.

(cid:1) En général, getchar est utilisé dans une affectation:

Exemple :

#include <stdio.h>

void main()

{

char x;

x=getchar();

putchar(x);

}

=> exécution : A

A

(cid:1) putchar(c); (cid:3)(cid:3)(cid:3)(cid:3) printf(« %c »,c);

(cid:1) getchar(); (cid:3)(cid:3)(cid:3)(cid:3) scanf(« %c »,&c);

Wiem Yaiche Elleuch chapitre 3

3