Travaux Dirigé numéro
2 L&P
DESS CCI 1999-2000
Buts de la séance
-
Utiliser les types C
-
Utiliser les routines d'E/S console
1 Routines d'E/S console
Nous décrivons ici le moyen d'afficher des caractères
à l'écran ainsi que celui de lire des caractères à
partir du clavier.
1.1 Affichage
Pour afficher des caractères à l'écran, nous utilisons
la routine "printf". Le nombre d'argument de
cette routine est variable. Le premier argument est toujours la chaine
de formatage des données à afficher.
Exemple :
int age;
...
printf("L'age du capitaine est %d.",
age);
La chaine de formatage contient des caractères à afficher
(par exemple, "L'age du capitaine est ") et
des séquences de caractères spécialisées qui
indique sous quelle forme doivent être affichées les données
qui sont passées dans les paramètres suivants. Ces séquences
commencent toujours par le caractère %.
Dans notre exemple, %d indique qu'il faut afficher
un entier signé à cette place ; cet entier est donné
par la variable age. Il existe des séquences
de formatage pour tous les types de base (exemple : %f
pour float, %u
pour entier non signé, %s pour chaine
de caractères, %c pour char,
etc..).
1.2 Lecture
Pour lire des données au clavier, nous utilisons la routine "scanf".
Le nombre d'argument de cette routine est variable. Comme pour "printf",
le premier argument est toujours la chaine de formatage des données
à lire. Par contre, cette chaine ne contient que des séquences
de formatage ("%...").
Exemple :
int age;
char nom[32];
...
printf("Quel est l'age du capitaine
' ");
scanf("%d", &age);
printf("Quel est le nom du capitaine
? ");
scanf("%s", nom);
Le premier "scanf" de l'exemple indique dans
la chaine de formatage qu'on veut lire un entier signé. Celui-ci
sera stocké dans la variable age. Les
variables recevant la valeur lue doivent toujours être précédée
d'un "&", sauf dans le cas des chaines
de caractères (deuxième "scanf").
Exercice 1 : Ecrire un programme qui demande à lire un
entier ou un réel et affiche son carré.
2 Manipulation des mois
Exercice 1 : Ecrire un programme ayant les caractéristiques
suivantes
-
déclare et initialise un tableau contenant le nombre de jours de
chaque mois de l'année,
-
affiche, lorsqu'on donne un numéro de mois, la durée du mois
en jours.
Exercice 2 : Déclarer une structure qui contient le nom d'un
mois et son nombre de jours.
Exercice 3 : A partir de 2 et 3, déclarer et initialiser
un tableau contenant les structures qui décrivent chaque mois de
l'année.
Exercice 4 : Ecrire une procédure qui affiche à
l'écran le nom et la durée de chaque mois.
Exercice 5 : Ecrire une procédure qui affiche le nom et
la durée d'un mois par rapport à son numéro, et une
autre qui affiche le numéro et la durée par rapport à
son nom.
3 Travail pratique associé à la séance
Le but est de manipuler des données structurées, des opérateurs
et des instructions. Le travail à faire est basé sur la notion
de durées.
Vous devez écrire un programme qui :
-
Permet à l'utilisateur de saisir une durée sous la forme
Jours, Heure, Minutes, Secondes et qui affiche son équivalent en
secondes.
-
Permet à l'utilisateur de saisir trois durée sous la forme
Jours, Heures, Minutes, Secondes et qui les affiche sous la mme forme dans
l'ordre croissant.
-
Permet à l'utilisateur de choisir l'une ou l'autre de ces fonctions
et de les répéter autant de fois qu'il le désire,
au travers d'un menu.
Utiliser des structures ou des tableaux quand cela vous paraît nécessaire.
Le programme que vous aurez écrit devra être testé
et commenté.