samedi 20 avril 2024 | Accueil | Contact    
COGITEC - Transfert de savoir-faire en technologie objet
  |   Valeurs  |   Partenaires  |  Location  |  
  PRESENTATION ENTREPRISE
  Activités
  Localisation
 
  FORMATION
  Catalogue
  Calendrier
  Proposer une date
  Evaluez-vous
 
  RECHERCHE
  Formations
  Stages
 
  REFERENCES
  Interentreprises
  Intra entreprise
  Accompagnement
 
  DEVELOPPEMENT
 
 
  COGITEC
  12 avenue Jules Verne
44230 Saint Sébastien / Loire
Mail : cogitec@cogitec.fr
Tél: 02 40 94 78 68
 
EVALUEZ-VOUS EN LIGNE
  C/C++
Développer en langage C

Répondez aux 18 questions suivantes pour évaluer vos connaissances sur cette formation.

 -1-
Tout programme C débute par l?exécution d?une fonction spécifique, laquelle :
run
Start
Main
aucune de celles proposées

 -2-
Quelle caractéristique ne s?applique pas au langage C :
Le langage C est un langage procédural
Le langage C a été développé pour faciliter le portage du système UNIX
Le langage C est un langage objet compilé
Le langage C est normalisé (ANSI)

 -3-
Parmi les opérateurs suivants : + * () [ ]
l?ordre de priorité d?évaluation est :
[ ], *, +, ()
*, +, [ ], ()
(), [ ], *, +
*, (), [ ], +

 -4-
Quel est le caractère spécial permettant le retour à la ligne :
'l'
'/l'
'\n'
'/0'

 -5-
Le mot clé continue à l?intérieur d?une structure itérative sert à :
arrêter l?exécution du bloc courant et passer à l?itération suivante
continuer l?exécution du programme lors de la détection d?une erreur
sortir de la structure itérative
ce n?est pas un mot clé du langage C

 -6-
Quelle est la structure de contrôle itérative non valide en langage C
for (i = 0; i<10; i++) printf("%d", i);
while (i>=0) { printf("%d", i); i--; }
until (i<0) { printf("%d", i); i--; }
for(i=10; ; i--) {printf("%d", i); if(i==0) break; }

 -7-
A partir des deux prototypes de fonctions :
int foo1(char, int, double);
int foo2(int);
Quel est le contexte d?appel invalide :
int i = foo1('a', 10, 1000);
foo1("b", (int) 1.0, (double)1000);
foo1(10, 'a', 1000.0);
foo2(foo1('b', foo2(3), 1.0));

 -8-
Parmi l?ensemble de ces propositions, quelle est la seule qui soit valide en langage C :
il est possible d?imbriquer des définitions de fonction
une fonction C peut posséder un nombre variable d?arguments
une fonction C doit obligatoirement spécifier une valeur de retour
deux fonctions C différentes peuvent possédées le même nom. Dans ce cas la distinction est faite à l?aide des types des arguments

 -9-
Identifiez la macro pré processeur non valide :
#define PI 3.141593
#define forever for( ; ; )
#define max(int I, int J) ((I)>(J) ? (I) : (J))
#define getrandom(min, max) ((rand()%(int)(((max) + 1)-(min)))+ (min))

 -10-
Parmi les propositions suivantes, quelle est celle qui est incorrecte :
un module C est généralement constitué d?un fichier interface ou header (.h) et d?un fichier d?implémentation ou corps (.c)
pour éviter la redéfinition de types, il est nécessaire d?encadrer le contenu d?un fichier header par des directives de compilation conditionnelle #ifndef ? #endif
une variable static est implémentée dans la pile
une fonction static a une portée limitée au module qui l?a définie

 -11-
A partir de la définition suivante :
char tab[10] = "Exemple";
quel est le résultat produit par l?expression :
printf("%d\n", strlen(&tab[1]));
6
7
10
erreur à la compilation

 -12-
Quelle est le résultat produit par l?expression :
printf("%d\n", strcmp("ok", "nok"));
1
0
-1
erreur à la compilation

 -13-
Identifiez la bonne définition d?un pointeur p sur un tableau de 10 fonctions prenant comme argument un int et restituant une chaîne de caractères :
char *(*p[10])(int);
char *(*(*p)[10])(int);
char *(*(*p[10]))(int);
char *(*(*p))[10])(int);

 -14-
A partir des définitions suivantes :
int i = 10;
int * p = NULL;
char *q = NULL;
quelle est la seule affectation valide :
p = q;
q = p;
p = &i;
q = &i;

 -15-
En langage C, une union est :
une structure dont tous les champs sont alignés sur la même adresse en mémoire
une structure construite par concaténation de plusieurs structures
une structure dont la validité des champs est définie à partir de la valeur d?un sélecteur de cas
un champ de bit manipulable à l?aide des opérateurs & | ! ^ >> et <<

 -16-
Quelle est la liste des opérateurs applicables sur des structures nommées de même type et sur des pointeurs de structure :
= + - # $ [ ]
= == != . ^ & *
= . -> & *
aucune de celles proposées

 -17-
Parmi les propositions suivantes, lesquelles affichent le caractère 'a' à l?écran :
putchar(97); // 97 est le code ascii du caractere 'a'
putc('a', stdout);
fprintf(stdout, "%c", 'a');
aucune

 -18-
FILE *fopen(const char *nom, const char *mode);
est le prototype de la fonction standard d?ouverture de fichier.
Quels sont les principaux modes d?ouverture exploitables par cette fonction :
"R" "W" "A" ...
"re" "wr" "ap" ...
"get" "put" "append" ...
"r" "w" "a" ...