Bonjour à tous j'ai un examen en septembre ( donc bientot)
j'ai réussis à avoir l'examen
comme je ne suis pas très fort en C je me permet de le poster
avec mes réponses
( et +- justifications )
je ne peut pas faire mieux par ce que j'ai beaucoup de mal en C
j'aimerai une correction ... pour m'orienter dans mon étude et dans mon syllabus
pour moi c'est B car l'étoile est devant tableau et 20 entre crochet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 1. On souhaite déclarer un tableau de 20 chaînes de caractères a. char *tableau [19]; b. char *tableau [20]; c. char (*tableau)[20];
mais que signifie (*tableau)[20]
A elle renvoie un Int
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
62. La fonction main a. peut renvoyer une valeur entière b. ne peut jamais rien renvoyer c. peut renvoyer une valeur réelle d. peut renvoyer des valeurs de nimporte quel type
B car int void ( char * argc[] int arg )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
53. La fonction main peut recevoir des arguments a. sous forme dun réel et dun tableau vers des chaînes de caractères b. sous forme dun entier et dun tableau vers des chaînes de caractères c. sous forme dun entier et dune chaîne de caractères qui comprend tous les arguments
je ne sais pas le faire peut on m'expliquer ce que fait chacun ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 4. Soient les instructions : void *p ; int t [ ] = {100, 200, 300, 400} ; On veut augmenter t[2] de 1. a. p = &t[2] ; (*p)++ ; b. (int *)p = &t[2] ; (*p)++ ; c. p = &t[2]; (*(int *) p) ++ ; d. p = &(int *)t[2] ; (*p)++ ;
je ne sais pas du tout
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
55. Lors du passage dun argument à une fonction, a. une variable élémentaire passe par adresse b. un tableau passe par adresse c. un pointeur passe par adresse
je pense que c'est le B car il y a deux etoiles ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 6. Soit : int tab[][4] = { {10, 20, 30, 40}, {50, 60, 70, 80}} ; int * p = *tab ; Pour imprimer le ième élément du tableau (i = 0, 1, ), a. printf( "%d", *(tab+i) ) ; b. printf( "%d", *(*(tab+i)) ) ; c. printf( "%d", *(p+i) ) ;
C je crois mais pk ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
57. Si le programme est écrit dans un seul fichier, une variable globale est déclarée a. nimporte où dans le fichier, en dehors de toute fonction b. au début du fichier, en dehors de toute fonction c. nimporte où dans le fichier, en-dehors de toute fonction, avant la fonction main
je ne comprend pas la question on à pas la valeur de a
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 8. a &= 0X8 ; a. a garde le bit n°3 ,les autres sannulent (le bit le plus à droite porte le n° 0). b. a garde le bit n°3 , les autres deviennent 1 c. a garde le bit n°3, les autres sinversent
a = a & 0X8
A je pense par ce que je déclare de I pour des while dans mes fonctions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
49. Une variable locale dans une fonction a. peut porter le même nom quune variable dune autre fonction b. ne peut pas porter le même nom quune variable dune autre fonction
C elle va initialiser les entier à 0 et les caractères à '\0'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 10. La fonction calloc a. initialise des entiers à 0 et les caractères à b. initialise des entiers à 0 et les caractères à \n c. initialise des entiers à 0 et les caractères à \0
Voila pourriez vous m'aider merci
C'est hyper important
Partager