0% ont trouvé ce document utile (0 vote)
42 vues4 pages

1 Examen

Transféré par

ayoubrojar1
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
42 vues4 pages

1 Examen

Transféré par

ayoubrojar1
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

NOM : Question 4

Prénom : Qu’affichent les instructions suivantes :

m
int i=10 ;
 Examen de langage C while (i>0) {
i=i-4 ;

o
11 Janvier 2016 printf("%d ",i) ;
}
Durée : 1h30

c
1) 1 0 6 2 3) 6 2

.
Aucun document autorisé. Calculatrice interdite. 2) 6 2 ‐2 4) C’est une boucle infinie
L’examen est constitué d’une partie QCM (Questions à Choix Multiples) et d’un exercice à

ro
rendre sur feuille à part. Pour répondre au QCM, vous devez remplir la feuille de réponse Question 5
en p.7 et rendre l’ensemble de l’énoncé. Il y a 0,5 point par bonne réponse, 0 point s’il n’y
Le type « char » correspond à :
a pas de réponse et ‐0,25 point par réponse fausse.
1) Un entier codé sur un unique octet 3) Une chaîne de caractères

p
Question 1 2) Un réel 4) Aucune de ces trois réponses.

-
Qu’affiche l’instruction suivante :

i
printf("j’aime le C %d fois", 30/20) ; Question 6

r
1) j’aime le C 0 fois 3) j’aime le C 1.5 fois Quelle est la valeur de S après exécution des instructions suivantes :
int i ;
2) j’aime le C 1 fois 4) je n’aime pas le C

a
int S=0 ;
for (i=1 ; i<6 ;i=i+2)

k
S=S+i ;
Question 2
1) 6 3) 8
Qu’affichent les instructions suivantes :

b
2) 7 4) 9
int x=9 ;
int y=x+10 ;

a
printf("%d :%d :%d",x,y,y) ; Question 7
Quelle est l’occupation mémoire de la constante symbolique définie par

3
1) 9 :19 : 3) 9 :19 :%d
#define A 10.5 ?

l
2) 9 :19 :19 4) %d :%d :%d
1) 0 octet 3) 2 octets
2) 1 octet 4) 4 octets

a
Question 3

.
Qu’affichent les instructions suivantes : Question 8
char a ; Le type « sentence » correspond à

w
a=65 ; 1) Un entier codé sur un unique octet 3) Une chaîne de caractères
printf("%d %c",a,a) ;
2) Un réel 4) Aucune de ces trois réponses.
1) A A 3) A 65

w
2) 65 A 4) 65 65
Question 9
Dans une structure if …

w
1) Les parenthèses encadrant la condition logique sont obligatoires
2) Le mot clé « else » est obligatoire
3) La condition, énoncée juste après if, est suivie d’un point virgule.

1 2
int tab[10] ;
char c ;
Question 10 int *pti ;

m
Si le nombre d’itérations est connu, il est conseillé d’utiliser : char *ptc ;
1) while … 3) for … Cocher ce qui est juste (pour les lignes de code, ce qui compile sans warning) :

o
2) do … while 1) pti=&i ; *pti=12 ; 4) tab[i] est équivalent à *(tab+i) ;
2) pti=&tab ; *pti=4 ; 5) tab[i] est équivalent à &(tab+i) ;
3) ptc=&c ; *ptc=‘a’ ;

c
Question 11

.
L’instruction « switch » sert à éviter des instructions :
Question 17
1) while … imbriquées 3) if … else … imbriquées

ro
2) do … while imbriquées 4) for … imbriquées On considère la déclaration suivante : char *ptc ; ptc peut contenir :
1) des valeurs de variables de type caractère
2) des adresses de variables de type caractère
Question 12

p
Si le nombre d’itérations n’est a priori pas connu et que l’on désire passer au moins une fois
Question 18

-
dans la boucle, on utilise :

i
1) while … 3) for … On définit les constantes et les variables suivantes :
#define A 5

r
2) do … while
#define B 7
#define G 5.6

a
Question 13 float c, d ;
En programmation en langage C, quel signe utilise‐t‐on pour l’affectation ? int e=5, f=7 ;

k
1) = 3) ==
2) := Lesquelles de ces déclarations sont‐elles justes :

b
1) int T1[10][B] ; 4) int T4[G][B] ;
Question 14 2) float T2[10][B] ; 5) char T5[1][c] ;
3) int T3[A][B] ; 6) float T6[e][f] ;

a
On considère deux tableaux T1 et T2. Entourez les propositions correctes. Il est possible de
copier le contenu de T2 dans T1 sans perdre d’information :

3
1) directement si T1 et T2 sont de même taille : on utilise l’instruction T1=T2 Question 19

l
2) directement si la taille de T1 est supérieure à la taille de T2 : on utilise l’instruction Lesquelles de ces déclarations de fonctions sont correctes si elles sont sensées calculer « x »
T1=T2 élevé à la puissance « n » entière ?

a
3) directement si la taille de T2 est supérieure à la taille de T1 : on utilise l’instruction 1) float puissance (float x, int n) ; 3) void puissance (float x, int n) ;

.
T1=T2 2) puissance (float x, int n) ; 4) puissance() ;
4) élément par élément à l’aide d’une boucle dès que la taille de T1 est supérieure ou
égale à la taille de T2.
Question 20

w
Il est conseillé d’utiliser des variables :
Question 15
1) Locales 2) Globales
Soit un tableau int T[10] ; pour accéder à la troisième case du tableau T, on utilise :

w
1) T[3] 3) T{2}
Question 21
2) T[2] 4) T(3)
Quelles sont les manières correctes pour passer le tableau d’entiers tab en argument ?

w
1) void fonction (int *tab, int dim) 3) void fonction (int &tab, int dim)
Question 16
2) void fonction (int tab[ ], int dim)
On définit les variables de la façon suivante :
int i ;
3 4
Question 22 int j ;
char b, h ;
Entourez les réponses correctes. Dans un fichier d’entête .h, on met :
Quels sont les appels de fonction corrects ?

m
1) Les définitions des fonctions 3) Les définitions des structures
1) fiche (a, c ; j ;b, h) ; 4) fiche (&a, &c, j, b, h) ;
2) Les entêtes ou prototypes des 4) La fonction main
2) fiche (&a, &b, c, j, h) ; 5) fiche (a ; j ; b ; h) ;
fonctions 5) Toutes les variables du projet

o
3) fiche (&a, &c, 3, ‘b’, b) ;

c
Question 23
Question 28

.
La fonction free de la bibliothèque stdlib.h est utilisée pour affecter la valeur zéro à un
Soit le pointeur de fichier défini par FILE *fp ; on veut ouvrir le fichier
pointeur.
« C:/Mesdocuments/essai.txt » en mode lecture. Entourez les propositions correctes.

ro
1) Vrai 2) Faux
1) "C:/Mesdocuments/essai.txt "=fopen(fp, " r") ;
2) fp=fopen("C:/Mesdocuments/essai.txt ", "r") ;
Question 24 3) fp=fopen(C:/Mesdocuments/essai.txt, "r") ;
4) fopen(fp, "C:/Mesdocuments/essai.txt ", "r") ;

p
Que fait la fonction malloc(n) ?
1) Fournit l’adresse du premier octet d’un bloc en mémoire de n octets libres 5) le fichier «C:/Mesdocuments/essai.txt » doit exister

-
2) Fournit l’adresse du premier octet d’un bloc en mémoire de n octets libres ou le 6) Si le fichier «C:/Mesdocuments/essai.txt » n’existe pas, il est créé.

i
pointeur NULL s’il n’y a pas assez de mémoire

r
3) Fournit un bloc en mémoire à partir de l’adresse n Exercice à faire sur feuille à part
Faites une fonction qui sauvegarde dans un fichier au format ASCII un tableau de doubles

a
Question 25 avec le format suivant : « la composante i vaut tab[i] », suivi d’un passage à la ligne.
Faites une fonction qui lit un fichier écrit dans ce format.

k
En C, on peut utiliser les variables sans pour autant avoir à les déclarer.
1) Vrai 2) Faux Comment organiseriez‐vous ce projet sous Code Blocks ? Précisez en particulier les fichiers
sources, les fichiers d’entête, les inclusions de fichiers.

Question 26
Soient les lignes d’instruction suivantes :
struct timbre {

a b
3
int prix ;

l
int annee ;
char origine[20] ;
char image[20] ;

a
} ;

.
struct timbre COLLECTION[10] ;

Comment accède‐t‐on à l’année du 3ème timbre de la collection ?

w
1) COLLECTION[2,2] 4) COLLECTION.annee
2) COLLECTION[2].annee 5) (COLLECTION+2)‐>annee
3) COLLECTION.annee[2]

Question 27

w w
On considère l’entête (ou prototype) de fonction suivante :
void fiche(float *x, float *y, int i, char z, char c)
On considère les déclarations suivantes :
float a, c ;
5 6
NOM :
Prénom :

m
FEUILLE DE REPONSE
Cochez les réponses correctes.

Question 1
Question 2
Question 3
1
1
1
2
2
2
3
3
3
4
4
4

. co
ro
Question 4 1 2 3 4
Question 5 1 2 3 4
Question 6 1 2 3 4

p
Question 7 1 2 3 4
Question 8 1 2 3 4
Question 9
Question 10
Question 11
1
1
1
2
2
2
3
3
3 4

r i -
a
Question 12 1 2 3
Question 13 1 2 3

k
Question 14 1 2 3 4
Question 15 1 2 3 4

b
Question 16 1 2 3 4 5
Question 17 1 2

a
Question 18 1 2 3 4 5 6
Question 19 1 2 3 4

3
Question 20 1 2
Question 21
Question 22

.
Question 23
Question 24
Question 25
1
1
1
1
1
2

a
2
2
2
2
l 3
3 4 5

w
Question 26 1 2 3 4 5
Question 27 1 2 3 4 5

w
Question 28 1 2 3 4 5 6

w 7

Vous aimerez peut-être aussi