[PDF] Programmation en C – Exercices





Previous PDF Next PDF



COURS DADMINISTRATION DES RÉSEAUX INFORMATIQUES

25 jan. 2019 cours d'administration se veut pour objectif primordial de donner aux ... INSTALLATION DU « ACTIVE DIRECTORY ». ... Cours et exercices.



Chapitre 2 : Présentation des services de domaine Active Directory

Utilisation d'AD DS pour centraliser la gestion réseau d'utilisateurs au cours ... Exercice 2 : Examen des composants physiques AD DS.



Exercices corrigés

effectuées avec l'instruction raw_input(). Cours no 2 : « Contrôle du flux d'instructions ». 1. Saisissez un flottant. S'il est positif ou nul affichez sa 



Cours PHP Accéléré

12 juil. 2022 Ce cours au format pdf ... une page html pure sauvegardée avec l'extension .php sera donc non ... Ut enim ad minim veniam quis nostrud.



Formation :Windows Server 2012 R2 : Réussir la certification MCSA

12 nov. 2018 Windows Server 2012 le second des trois examens nécessaires pour obtenir ... Maintenir les services de domaine Active Directory (AD DS)



420-304-EM Département dInformatique Session Automne 2014

Revoir les notes de cours compléter et reprendre les exercices faits en classe. Créer un domaine Active Directory sous Windows serveur 2012. Contenu.



Systèmes dexploitation Windows : serveurs

Des cours avancés forment aux techniques de déploiement Windows 2016



Formation :Windows Server 2012 R2 : Réussir la certification MCSA

12 nov. 2018 formation Windows Server 2012 prépare spécifiquement à l'examen ... Mettre en œuvre et configurer le déploiement des services AD CS AD RMS



Programmation en C – Exercices

Exemples de corrections des partiels et des examens. Ph. LANGLOIS Ces moyennes mk seront stockées dans un tableau ad-hoc que l'on affichera.



Virtualisation Cloud

Cloud Computing

Université de Perpignan Via Domitia

Licence de Sciences et Technologies

Mention Sciences de l"Ingénieur

Programmation en C - Exercices

Enoncés

Sujets des partiels et examens

Exemples de corrections des exercices

Exemples de corrections des partiels et des examens

Ph. LANGLOIS

Version du 18 septembre 2013

Programmation en C - Exercices

PhL. version du 18 septembre 20132

Table des matières

I Enoncés des exercices 7

1 Description de l"environnement de programmation 9

1.1 Du code source à l"exécution : cas simple . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

1.2 Du code source à l"exécution : cas général . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

1.3 Pratique et conseils associés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

1.4 Utilisercygwinsous M* Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

1.5 Pour être sûr d"avoir bien compris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2 Variables, valeurs, constantes, déclarations, types scalaires, opérateurs, expressions, entrées-

sorties simples13

3 Opérateurs entiers, bit à bit, logiques, tests 15

4 Fonctions mathématiques, tableaux, boucles, constantes symboliques 17

5 Structures de contrôle : répétition, choix 19

6 Fonctions : prototypes, définition, appels 23

7 Pointeurs25

8 Types,makefile27

II Sujets des partiels et examens. 29

9 Sujets31

9.1 Partiel de novembre 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

9.2 Examen de décembre 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

9.3 Partiel de mars 2011 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

35

9.4 Examen de mai 2011 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

9.5 Examen de juin 2011 (session 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39

9.6 Examen de juillet 2011 (session 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

III Exemples de corrections des exercices 43

10 Description de l"environnement de programmation 45

10.1 bonjourlemonde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

10.2 swap1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

10.3 swap2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

10.4 swaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

46

10.5 swap3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

46

11 Variables,valeurs,constantes,déclarations,typesscalaires,opérateurs,entrées-sortiessimples 49

11.1 operateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49

11.2 int2bin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49

11.3 tabverite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

11.4 formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

51
3

Programmation en C - Exercices

12 Opérateurs entiers, bit à bit, logiques, tests 53

12.1 vallimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

53

12.2 op-int . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

53

12.3 int-vs-unsigned . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

54

12.4 div . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

54

12.5 op-bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

54

12.6 op-decall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

55

12.7 masques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

13 Fonctions mathématiques, tableaux, boucles, constantes symboliques 59

13.1 somme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

59

13.2 somme-p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

59

13.3 felem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

13.4 fibo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

13.5 fibo-inv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

13.6 fois2fois2etc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

13.7 max-tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

13.8 ind-max-tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

13.9 last-ind-max-tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

63

14 Structures de contrôle : répétition, choix 65

14.1 double-indice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

14.2 des-boucles-for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

14.3 des-boucles-while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

14.4 un-deux-etc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

14.5 suites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

66

14.6 equa-prem-deg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

66

14.7 aleas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

67

15 Fonctions : prototypes, définition, appels 69

15.1 f-fibo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

69

15.2 fibo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

70

15.3 f-fibo-main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

70

15.4 f-masques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

70

15.5 f-masques-main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71

16 Pointeurs73

16.1 ptr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

73

16.2 arith-ptr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

74

16.3 affiche-vect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

74

16.4 affichons-mat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

75

16.5 mystery-inc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

76

16.6 tab-ptr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

76

16.7 main-inc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

77

16.8 doubler-tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

77

16.9 tab-dyn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

78

16.10mat-dyn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

78

16.11echo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

80

16.12echo-inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

80

16.13combien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

80

16.14max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

80

16.15main-tx-var . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

81

17 Types,makefile83

17.1 type-vect-mat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

83

17.2 manip-type-vect-mat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

84

17.3 makefile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

84

PhL. version du 18 septembre 20134

Programmation en C - Exercices

IV Exemples de correction

des partiels et examens. 85

18 Correction du partiel de novembre 2010 87

18.1 echauffement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

87

18.2 tri2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

87

18.3 tri3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

18.4 expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

18.5 des-expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

18.6 exp-bool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

19 Correction de l"examen de décembre 2010 91

19.1 paire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

91

19.2 code-asci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

91

19.3 max-prod-mat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

92

19.4 moiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

93

19.5 f-mois . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

94

19.6 mois2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

95

20 Correction du partiel de mars 2011 97

20.1 tables-mult . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

97

20.2 xoxo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

97

20.3 compter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

98

21 Correction de l"examen de mai 2011 99

21.1 rev1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

99

21.2 rev2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

99

21.3 rev3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

100

21.4 rev4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

101

21.5 rev5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

101

21.6 aff-tab-carres-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

102

21.7 aff-tab-carres-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

103

21.8 aff-tab-carres-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

103

21.9 aff-tab-carres-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

104

21.10aff-tab-carres-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

104

21.11aff-tab-carres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

105

22 Correction de l"examen de juin 2011 (session 2) 107

22.1 exp2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

107

22.2 exp3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

107

22.3 un . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

108

22.4 combiendeun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

108

22.5 suite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

109

22.6 suite2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

109

23 Correction de l"examen de juillet 2011 (session 2) 111

23.1 moy1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

111

23.2 moy2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

111

23.3 moy4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

112

23.4 concattab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

113

V Annexes 115

24 C Reference Card (ANSI) 117

25 Résumé des commandes de base UNIX 119

26 Description de l"enseignement 121

PhL. version du 18 septembre 20135

Programmation en C - Exercices

PhL. version du 18 septembre 20136

Première partie

Enoncés des exercices

7

Chapitre 1

Description de l"environnement de

programmation

Cette partie décrit la prise en main de l"environnement de programmationgccutilisé en TD sous envi-

ronnement Linux ou aveccygminsous Windows1. Convention à utiliser pour les extensions des noms de fichiers : .c: fichier source C .h: fichier en-tête (header) C .o: fichier objet sans extension : exécutable

On distingue deux cas, selon que le programme est composé d"un seul fichier (cas simple) ou de plu-

sieurs (cas général).

1.1 Du code source à l"exécution : cas simple

Trois étapes sont nécessaires pour créer un fichier exécutable à partir d"un fichier de code source.

1.

Compiler : génération du fichier objet .o- nous verrons plus loin que cette étape comporte en fait

des étapes intermédiaires. 2. Linker : édition des liens entr eles fichiers objets et création du fichier exécutable.

Ces deux étapes peuvent être aussi regroupées en une seule commande, ce que nous apprendrons

d"abord.

1.1.1 Le code source

Utiliser votre éditeur favori pour taper la version C suivante du classique "Hello World" ...en français.

*Vous l"avez reconnu : Bonjour le monde !*/ #include int main() printf("Bonjour le (centre du) monde !\n"); return 0;

Sauvegarder ce programme dans le fichierbonjourlemonde.c.1. Les principales spécificités de cette configutaion sont décrites à la section 1.4

9

Programmation en C - Exercices

1.1.2 Méthode 1 : génération directe de l"exécutable

Le cas simple du code contenu dans un fichier unique permet d"utiliser une seule commande à cet effet.

La version la plus courte est

$ gcc bonjourlemonde.c

qui se trouvera au même endroit que le fichier source. Pour l"exécuter il suffit alors d"entrer la com-

mande suivante (dans une fenêtreterminal). $ ./a.out ou plus simplement encore, $ a.out si votre variable d"environnementPATHpermet d"examiner le répertoire courant.

Il est plus pratique de pouvoir choisir le nom de son exécutable en le précisant avec l"option-o.

$ gcc -o bonjourlemonde bonjourlemonde.c Vous utiliserez en effet la commande plus longue suivante.quotesdbs_dbs43.pdfusesText_43
[PDF] active directory tuto PDF Cours,Exercices ,Examens

[PDF] activer carte sim sosh PDF Cours,Exercices ,Examens

[PDF] activer suggestion amis facebook PDF Cours,Exercices ,Examens

[PDF] activer url rewriting apache2 PDF Cours,Exercices ,Examens

[PDF] Activité 4ème Autre

[PDF] Activité "Cordonnées d'un point" 2nde Mathématiques

[PDF] Activité 1 et 2 2nde Physique

[PDF] activité 1 les notices des médicaments correction PDF Cours,Exercices ,Examens

[PDF] Activité 1 niveau 6eme 6ème Mathématiques

[PDF] activité 1-2 ans PDF Cours,Exercices ,Examens

[PDF] Activité 1: Multiplication de Fractions 5ème Mathématiques

[PDF] Activité 1:Les objets dans lunivers 4ème Physique

[PDF] Activité 2 : diversité génétique au sein d'une population 2nde SVT

[PDF] Activité 2 Carré dune différence 4ème Mathématiques

[PDF] Activité 2: Multiplication de Fractions 5ème Mathématiques