Cahier de TD
PROGRAMMATION EN LANGAGE C
L1 Année 2004 - 2005
Cahier de TD
PROGRAMMATION EN LANGAGE C
L1 Année 2004 - 2005
THEME 1 : VRAI/FAUX, DEFINITION DE STRUCTURES ......................................................... 1
VRAI/FAUX........................................................................................................................................... 1
CHOISISSEZ
,
POUR LES EXEMPLES SUIVANTS
: ..................................................................................... 1
M
ANIPULATIONS DE BASE
:
LE
'.'
ET LA
'
' ......................................................................................... 3
THEME 2 : FONCTIONS ET STRUCTURES .................................................................................. 3
L
ES OPERATIONS DE ROUTINE
: ............................................................................................................... 5
L
ES OPERATIONS DE TRANSFORMATION
: ................................................................................................ 5
THEME 3 : THEME DE SYNTHESE : UN PETIT CATALOGUE ASTRONOMIQUE ............. 7
THEME 4 : THEME DE SYNTHESE : LES NOMBRES COMPLEXES ...................................... 9
THEME 5 : TABLEAUX DE STRUCTURES, BASES DE DONNEES .......................................... 9
Cahier de TD 1
PROGRAMMATION EN LANGAGE C
L1 Année 2004 - 2005
Thème 1 : Vrai/faux, définition de structures
VRAI/FAUX
Une structure est un type VRAI
Une structure est un type défini par l'utilisateur VRAI
Une structure a au moins un champ de type entier FAUX
Un champ est une structure FAUX
Un champ comporte des structures FAUX
Une structure comporte un ou des champs VRAI
Un champ est défini uniquement par son type FAUX
Un champ est défini uniquement par son nom FAUX
Un champ peut être de n'importe quel type VRAI
On ne peut pas définir de variable dont le type est une structure FAUX
L'accès à un champ d'une structure se fait par la syntaxe : '*' FAUX
On peut définir un pointeur sur une structure VRAI
choisissez, pour les exemples suivants :
les types et les noms des champs pour les objets listés, et écrivez la définition de la
structure associée (pas plus de 5/6 champs par structure) :
j'en profite pour donner la syntaxe de définition d'un type en algorithmique :
structure nom_du_type
{
type_champ1 nom_champ1;
type_champ_n nom_champ_n;
};
par convention typographique, le nom du type commence toujours par 't_'.
une adresse postale
structure t_adr_post
{
entier numéro;
caractere *nom_rue;
entier code_postal;
caractere ville[50];
}
Cahier de TD 2
PROGRAMMATION EN LANGAGE C
L1 Année 2004 - 2005
un CD musical
structure t_CD_audio
{
caractere titre[30];
entier nb_pistes;
caractere *auteur;
entier annee;
}
un client d'une banque
structure t_client
{
caractere *nom, *prenom;
adr_post adresse; // on reprend le type adr_post déjà défini
entier solde_compte;
entier possede_CB;
entier numero_compte;
}
un chien (cela peut paraître saugrenu au premier abord…utilité de ce type défini ?
par exemple, pour la gestion d'un cabinet vétérinaire ou de vente/achat de chiens
de race)
structure t_chien
{
caractere nom[20];
t_race race; // t_race peut être un type énuméré par exemple ou
un entier
entier age;
entier num_tatouage;
reel prix_estime;
}
une émission télévisée
structure t_emission
{
t_date date_diffus; // on peut définir un type date, toujours
utile
caractere *nom;
entier chaîne;
entier duree;
}
un joueur de football
structure t_joueur
{
caractere *nom;
entier nationalite;
entier age;
caractere *poste;
reel salaire;
}
une équipe de football
Cahier de TD 3
PROGRAMMATION EN LANGAGE C
L1 Année 2004 - 2005
structure t_f_team
{
caractere *ville;
caractere nom_club[30];
entier annee_creation;
t_joueur effectif[30];
entier classement;
}
Manipulations de base : le '.' et la ''
Dans les exemples de programme suivants, indiquez quelles écritures sont correctes
syntaxiquement.
structure ordi
{
entier capa; // capacité de la mémoire
entier freq; // fréquence du proco
caractere marque[30]; // marque du PC et du processeur
entier hd; // capacité du disque dur
};
programme ordi_struct
ordi mon_pc; //OK
entier hd; //OK
afficher(mon_pc); // non, afficher() seulement pour types de base
ordi.capa 512; // non, ordi est un nom de type
mon_pc.marque "DELL AMD Athlon 2200+"; // NON car mon_pc.marque
// est une chaîne de caracteres, il faut utiliser la fonction copie
// (strcpy)
mon_pc.freq 1800; // OK
hd 120; //OK
mon_pc.hd hd; // OK
Thème 2 : Fonctions et structures
Les fonctions sont très souvent associées aux structures, pour la simple et bonne raison
qu'une structure ne se manipule pas comme une variable de type classique, et il faut donc
prévoir des fonctions pour toutes les opérations classiques que l'on doit réaliser. Nous avons
abordé en cours les nombres complexes, à titre d'exemple, nous allons continuer par un peu
d'algèbre linéaire et son application à un certain domaine de l'informatique qui est l'imagerie
de synthèse.
1 / 13 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !