Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Top 100 des questions et réponses d'entretien sur la programmation en C (2021)

1) Comment construisez-vous une instruction d'incrémentation ou une instruction de décrémentation en C ?

Il existe en fait deux façons de procéder. La première consiste à utiliser l'opérateur d'incrémentation ++ et l'opérateur de décrémentation -. Par exemple, l'instruction "x++" signifie incrémenter la valeur de x de 1. De même, l'instruction "x -" signifie décrémenter la valeur de x de 1. Une autre façon d'écrire les instructions d'incrémentation consiste à utiliser le signe + plus conventionnel ou – signe moins. Dans le cas de "x++", une autre façon de l'écrire est "x =x +1".

2) Quelle est la différence entre Appel par valeur et Appel par référence ?

Lorsque vous utilisez l'appel par valeur, vous envoyez la valeur d'une variable en tant que paramètre à une fonction, tandis que l'appel par référence envoie l'adresse de la variable. De plus, sous Appel par valeur, la valeur du paramètre n'est pas affectée par l'opération qui a lieu, tandis que dans le cas de l'Appel par référence, les valeurs peuvent être affectées par le processus au sein de la fonction.

3) Certains codeurs déboguent leurs programmes en plaçant des symboles de commentaire sur certains codes au lieu de les supprimer. Comment cela aide-t-il au débogage ?

Placer des symboles de commentaire /* */ autour d'un code, également appelé "commentaire", est un moyen d'isoler certains codes qui, selon vous, peuvent causer des erreurs dans le programme, sans supprimer le code. L'idée est que si le code est en fait correct, vous supprimez simplement les symboles de commentaire et continuez. Cela vous fait également gagner du temps et vous évite d'avoir à retaper les codes si vous les avez supprimés en premier lieu.

4) Quel est le code équivalent de l'instruction suivante au format WHILE LOOP ?

for (a=1; a<=100; a++)

printf ("%d\n", a * a);

Réponse :

a=1;

while (a<=100) {

printf ("%d\n", a * a);

a++;

}

5) Qu'est-ce qu'une pile ?

Une pile est une forme de structure de données. Les données sont stockées dans des piles en utilisant l'approche FILO (First In Last Out). Dans une instance particulière, seul le haut de la pile est accessible, ce qui signifie que pour récupérer les données stockées dans la pile, celles de la partie supérieure doivent être extraites en premier. Le stockage de données dans une pile est également appelé PUSH, tandis que la récupération de données est appelée POP.

6) Qu'est-ce qu'un fichier à accès séquentiel ?

Lors de l'écriture de programmes qui stockeront et récupéreront des données dans un fichier, il est possible de désigner ce fichier sous différentes formes. Un fichier à accès séquentiel est tel que les données sont enregistrées dans un ordre séquentiel :une donnée est placée dans le fichier après l'autre. Pour accéder à une donnée particulière dans le fichier à accès séquentiel, les données doivent être lues une donnée à la fois, jusqu'à ce que la bonne soit atteinte.

7) Qu'est-ce que l'initialisation des variables et pourquoi est-elle importante ?

Il s'agit du processus dans lequel une variable se voit attribuer une valeur initiale avant d'être utilisée dans le programme. Sans initialisation, une variable aurait une valeur inconnue, ce qui peut entraîner des sorties imprévisibles lorsqu'elle est utilisée dans des calculs ou d'autres opérations.

8 Qu'est-ce que la programmation spaghetti ?

La programmation spaghetti fait référence à des codes qui ont tendance à s'emmêler et à se chevaucher tout au long du programme. Cette approche non structurée du codage est généralement attribuée au manque d'expérience du programmeur. La programmation spaghetti rend un programme complexe et l'analyse des codes difficile, et doit donc être évitée autant que possible.

9) Différencier les codes sources des codes objets

Les codes sources sont des codes qui ont été écrits par le programmeur. Il est composé de commandes et d'autres mots-clés de type anglais censés indiquer à l'ordinateur ce qu'il doit faire. Cependant, les ordinateurs ne seraient pas capables de comprendre les codes sources. Par conséquent, les codes sources sont compilés à l'aide d'un compilateur. Les sorties résultantes sont des codes d'objet, qui sont dans un format qui peut être compris par le processeur de l'ordinateur. En programmation C, les codes sources sont enregistrés avec l'extension de fichier .C, tandis que les codes objet sont enregistrés avec l'extension de fichier .OBJ

10) En programmation C, comment insérez-vous des guillemets (" et ") dans l'écran de sortie ?

C'est un problème courant pour les débutants car les guillemets font normalement partie d'une instruction printf. Pour insérer le guillemet dans la sortie, utilisez les spécificateurs de format \' (pour les guillemets simples) et \" (pour les guillemets doubles).

11) À quoi sert un caractère '\0' ?

Il est appelé caractère nul de fin et est principalement utilisé pour indiquer la fin d'une valeur de chaîne.

12) Quelle est la différence entre le symbole =et le symbole == ?

Le symbole =est souvent utilisé dans les opérations mathématiques. Il est utilisé pour attribuer une valeur à une variable donnée. D'autre part, le symbole ==, également appelé "égal à" ou "équivalent à", est un opérateur relationnel utilisé pour comparer deux valeurs.

13) Qu'est-ce que l'opérateur de module ?

L'opérateur de module affiche le reste d'une division. Il utilise le symbole de pourcentage (%). Par exemple :10 % 3 =1, ce qui signifie que lorsque vous divisez 10 par 3, le reste est 1.

14) Qu'est-ce qu'une boucle imbriquée ?

Une boucle imbriquée est une boucle qui s'exécute dans une autre boucle. Mettez-le dans un autre sens, vous avez une boucle interne qui est à l'intérieur d'une boucle externe. Dans ce scénario, la boucle interne est exécutée un certain nombre de fois comme spécifié par la boucle externe. Pour chaque tour sur la boucle extérieure, la boucle intérieure est d'abord exécutée.

15) Lequel des opérateurs suivants est incorrect et pourquoi ? (>=, <=, <>, ==)

<> est incorrect. Bien que cet opérateur soit correctement interprété comme "différent de" lors de l'écriture d'instructions conditionnelles, ce n'est pas l'opérateur approprié à utiliser dans la programmation C. Au lieu de cela, l'opérateur !=doit être utilisé pour indiquer la condition "différent de".

16) Comparez et opposez les compilateurs aux interpréteurs.

Les compilateurs et les interpréteurs traitent souvent de la façon dont les codes de programme sont exécutés. Les interpréteurs exécutent les codes de programme une ligne à la fois, tandis que les compilateurs prennent le programme dans son ensemble et le convertissent en code objet, avant de l'exécuter. La principale différence ici est que dans le cas des interpréteurs, un programme peut rencontrer des erreurs de syntaxe au milieu de l'exécution et s'arrêter à partir de là. D'autre part, les compilateurs vérifient la syntaxe de l'ensemble du programme et ne procèdent à l'exécution que si aucune erreur de syntaxe n'est détectée.

17) Comment déclarez-vous une variable qui contiendra des valeurs de chaîne ?

Le mot-clé char ne peut contenir qu'une seule valeur de caractère à la fois. En créant un tableau de caractères, vous pouvez y stocker des valeurs de chaîne. Exemple :"char MonNom[50] ; ” déclare une variable de chaîne nommée MyName qui peut contenir un maximum de 50 caractères.

18) Les accolades { } peuvent-elles être utilisées pour délimiter une seule ligne de code ?

Alors que les accolades sont principalement utilisées pour regrouper plusieurs lignes de codes, cela fonctionnera toujours sans erreur si vous l'avez utilisé pour une seule ligne. Certains programmeurs préfèrent cette méthode pour organiser les codes afin de les rendre plus clairs, en particulier dans les instructions conditionnelles.

19) Que sont les fichiers d'en-tête et à quoi servent-ils en programmation C ?

Les fichiers d'en-tête sont également appelés fichiers de bibliothèque. Ils contiennent deux éléments essentiels :les définitions et les prototypes des fonctions utilisées dans un programme. En termes simples, les commandes que vous utilisez dans la programmation C sont en fait des fonctions définies à partir de chaque fichier d'en-tête. Chaque fichier d'en-tête contient un ensemble de fonctions. Par exemple :stdio.h est un fichier d'en-tête contenant la définition et les prototypes de commandes telles que printf et scanf.

20) Qu'est-ce qu'une erreur de syntaxe ?

Les erreurs de syntaxe sont associées à des erreurs dans l'utilisation d'un langage de programmation. Il peut s'agir d'une commande mal orthographiée ou d'une commande qui a dû être saisie en mode minuscule mais qui a été saisie à la place avec un caractère majuscule. Un symbole mal placé, ou l'absence de symbole, quelque part dans une ligne de code peut également entraîner une erreur de syntaxe.

21) Que sont les variables et en quoi sont-elles différentes des constantes ?

Les variables et les constantes peuvent à première vue se ressembler en ce sens que les deux sont des identifiants composés d'un caractère ou de plusieurs caractères (lettres, chiffres et quelques symboles autorisés). Les deux auront également une valeur particulière. Les valeurs détenues par une variable peuvent être modifiées tout au long du programme et peuvent être utilisées dans la plupart des opérations et des calculs. Les constantes ne reçoivent des valeurs qu'une seule fois, placées au début d'un programme. Cette valeur n'est pas modifiée dans le programme. Par exemple, vous pouvez attribuer une constante nommée PI et lui donner une valeur 3.1415 . Vous pouvez ensuite l'utiliser comme PI dans le programme, au lieu d'avoir à écrire 3.1415 à chaque fois que vous en avez besoin.

22) Comment accéder aux valeurs d'un tableau ?

Les tableaux contiennent un certain nombre d'éléments, en fonction de la taille que vous leur avez donnée lors de la déclaration des variables. Chaque élément se voit attribuer un numéro de 0 à nombre d'éléments-1. Pour attribuer ou récupérer la valeur d'un élément particulier, reportez-vous au numéro de l'élément. Par exemple :si vous avez une déclaration qui dit « inscores[5]; », alors vous avez 5 éléments accessibles, à savoir :scores[0], scores[1], scores[2], scores[3] et scores[4 ].

23) Puis-je utiliser le type de données "int" pour stocker la valeur 32768 ? Pourquoi ?

Non. Le type de données "int" est capable de stocker des valeurs de -32768 à 32767. Pour stocker 32768, vous pouvez utiliser "long int" à la place. Vous pouvez également utiliser "unsigned int", en supposant que vous n'avez pas l'intention de stocker des valeurs négatives.

24) Deux opérateurs ou plus tels que \n et \t peuvent-ils être combinés dans une seule ligne de code de programme ?

Oui, c'est parfaitement valable de regrouper les opérateurs, surtout si le besoin s'en fait sentir. Par exemple :vous pouvez avoir un code comme " printf ("Hello\n\n\'World\'") " pour afficher le texte "Hello" sur la première ligne et "World" entre guillemets simples pour apparaître sur la suivante deux lignes.

25) Pourquoi tous les fichiers d'en-tête ne sont-ils pas déclarés dans chaque programme C ?

Le choix de déclarer un fichier d'en-tête en haut de chaque programme C dépendra des commandes/fonctions que vous utiliserez dans ce programme. Étant donné que chaque fichier d'en-tête contient des définitions de fonction et un prototype différents, vous n'utiliserez que les fichiers d'en-tête qui contiendront les fonctions dont vous aurez besoin. Déclarer tous les fichiers d'en-tête dans chaque programme ne ferait qu'augmenter la taille globale du fichier et la charge du programme, et n'est pas considéré comme un bon style de programmation.

26) Quand le mot clé "void" est-il utilisé dans une fonction ?

Lors de la déclaration de fonctions, vous déciderez si cette fonction renverra une valeur ou non. Si cette fonction ne renvoie pas de valeur, par exemple lorsque le but d'une fonction est d'afficher certaines sorties à l'écran, alors "void" doit être placé dans la partie la plus à gauche de l'en-tête de la fonction. Lorsqu'une valeur de retour est attendue après l'exécution de la fonction, le type de données de la valeur de retour est placé à la place de "void".

27) Que sont les instructions composées ?

Les instructions composées sont composées de deux ou plusieurs instructions de programme qui sont exécutées ensemble. Cela se produit généralement lors de la gestion des conditions dans lesquelles une série d'instructions est exécutée lorsqu'un TRUE ou FALSE est évalué. Les instructions composées peuvent également être exécutées dans une boucle. Les accolades { } sont placées avant et après les instructions composées.

28) Quelle est l'importance d'un algorithme pour la programmation en C ?

Avant qu'un programme puisse être écrit, un algorithme doit d'abord être créé. Un algorithme fournit une procédure étape par étape sur la façon dont une solution peut être dérivée. Il agit également comme un modèle sur la façon dont un programme va démarrer et se terminer, y compris le processus et les calculs impliqués.

29) Quel est l'avantage d'un tableau par rapport aux variables individuelles ?

Lorsque vous stockez plusieurs données liées, il est judicieux d'utiliser des tableaux. En effet, les tableaux sont nommés à l'aide d'un seul mot suivi d'un numéro d'élément. Par exemple :pour stocker les 10 résultats de test d'un élève, on peut utiliser 10 noms de variables différents (grade1, grade2, grade3… grade10). Avec les tableaux, un seul nom est utilisé, les autres sont accessibles via le nom de l'index (grade[0], grade[1], grade[2]… grade[9]).

30) Écrivez une instruction de boucle qui affichera le résultat suivant :

1

12

123

1234

12345

Réponse :

for (a=1; a<=5; i++) {

for (b=1; b<=a; b++)

printf("%d",b);

printf("\n");

}

31) Qu'est-ce qui ne va pas dans cette déclaration ? scanf("%d",quelnombre);

Une esperluette et le symbole doivent être placés avant le nom de la variable quelnuméro. Placer &signifie que toute valeur entière saisie par l'utilisateur est stockée à « l'adresse » du nom de la variable. Il s'agit d'une erreur courante pour les programmeurs, qui conduit souvent à des erreurs logiques.

32) Comment générer des nombres aléatoires en C ?

Les nombres aléatoires sont générés en C à l'aide de la commande rand(). Par exemple :anyNum =rand() générera tout nombre entier commençant à 0, en supposant que anyNum est une variable de type entier.

33) Quel pourrait être le problème si un nom de fonction valide tel que tolower() est signalé par le compilateur C comme non défini ?

La raison la plus probable de cette erreur est que le fichier d'en-tête de cette fonction n'était pas indiqué en haut du programme. Les fichiers d'en-tête contiennent la définition et le prototype des fonctions et des commandes utilisées dans un programme C. Dans le cas de « tolower() », le code « #include » doit être présent au début du programme.

34) Que sont les commentaires et comment les insérer dans un programme C ?

Les commentaires sont un excellent moyen de mettre des remarques ou une description dans un programme. Il peut servir de rappel sur ce qu'est le programme, ou une description de la raison pour laquelle un certain code ou une fonction y a été placé en premier lieu. Les commentaires commencent par /* et se terminent par */ caractères. Les commentaires peuvent être d'une seule ligne, ou peuvent même s'étendre sur plusieurs lignes. Il peut être placé n'importe où dans le programme.

35) Qu'est-ce que le débogage ?

Le débogage est le processus d'identification des erreurs dans un programme. Lors de la compilation du programme, les erreurs trouvées empêcheront le programme de s'exécuter complètement. Dans cet état, le programmeur examinera les parties possibles où l'erreur s'est produite. Le débogage garantit la suppression des erreurs et joue un rôle important en garantissant que la sortie de programme attendue est atteinte.

36) Que fait l'opérateur &&dans un code de programme ?

Le &&est également appelé opérateur AND. Lors de l'utilisation de cet opérateur, toutes les conditions spécifiées doivent être TRUE avant que l'action suivante puisse être effectuée. Si vous avez 10 conditions et que toutes sauf une ne sont pas évaluées comme TRUE, l'intégralité de l'énoncé de condition est déjà évaluée comme FALSE

37) En programmation C, quelle commande ou code peut être utilisé pour déterminer si un nombre est pair ou impair ?

Il n'y a pas de commande ou de fonction unique en C qui puisse vérifier si un nombre est pair ou impair. Cependant, cela peut être accompli en divisant ce nombre par 2, puis en vérifiant le reste. Si le reste est 0, alors ce nombre est pair, sinon il est impair. Vous pouvez l'écrire en code comme :

if (num % 2 == 0)

printf("EVEN");

else

printf("ODD");

38) Que signifie le format %10.2 lorsqu'il est inclus dans une instruction printf ?

Ce format est utilisé pour deux choses :pour définir le nombre d'espaces alloués pour le numéro de sortie et pour définir le nombre de décimales. Le nombre avant la virgule est pour l'espace alloué, dans ce cas, il allouerait 10 espaces pour le nombre de sortie. Si le nombre d'espaces occupés par le numéro de sortie est inférieur à 10, des espaces supplémentaires seront insérés avant le numéro de sortie réel. Le nombre après la virgule définit le nombre de décimales, dans ce cas, il s'agit de 2 décimales.

39) Que sont les erreurs logiques et en quoi diffèrent-elles des erreurs de syntaxe ?

Les programmes contenant des erreurs logiques ont tendance à réussir le processus de compilation, mais la sortie résultante peut ne pas être celle attendue. Cela se produit lorsqu'une mauvaise formule a été insérée dans le code ou qu'une mauvaise séquence de commandes a été exécutée. Les erreurs de syntaxe, en revanche, traitent des commandes incorrectes mal orthographiées ou non reconnues par le compilateur.

40) Quels sont les différents types de structures de contrôle en programmation ?

Il existe 3 structures de contrôle principales dans la programmation :Séquence, Sélection et Répétition. La commande séquentielle suit un flux de haut en bas lors de l'exécution d'un programme, de sorte que l'étape 1 est d'abord exécutée, suivie de l'étape 2, jusqu'à ce que la dernière étape soit exécutée. La sélection traite des instructions conditionnelles, ce qui signifie que les codes sont exécutés en fonction de l'évaluation des conditions comme étant VRAI ou FAUX. Cela signifie également que tous les codes ne peuvent pas être exécutés et qu'il existe des flux alternatifs à l'intérieur. Les répétitions sont également connues sous le nom de structures en boucle et répéteront une ou deux instructions de programme définies par un compteur.

41) Qu'est-ce que || opérateur et comment fonctionne-t-il dans un programme ?

Le || est également connu sous le nom d'opérateur OU en programmation C. Lors de l'utilisation de || pour évaluer les conditions logiques, toute condition évaluée à TRUE rendra la déclaration de condition entière comme TRUE.

42) La fonction "if" peut-elle être utilisée pour comparer des chaînes ?

Non. La commande "if" ne peut être utilisée que pour comparer des valeurs numériques et des valeurs à caractère unique. Pour comparer les valeurs de chaîne, il existe une autre fonction appelée strcmp qui traite spécifiquement des chaînes.

43) Que sont les directives du préprocesseur ?

Les directives du préprocesseur sont placées au début de chaque programme C. C'est là que les fichiers de bibliothèque sont spécifiés, ce qui dépend des fonctions à utiliser dans le programme. Une autre utilisation des directives de préprocesseur est la déclaration de constantes. Les directives de préprocesseur commencent par le symbole #.

44) Quel sera le résultat de l'instruction conditionnelle suivante si la valeur de la variable s est 10 ?

s>=10 &&s <25 &&s!=12

Le résultat sera VRAI. Puisque la valeur de s est 10, s>=10 est évalué à TRUE car s n'est pas supérieur à 10 mais est toujours égal à 10. s<25 est également TRUE puisque 10 est inférieur à 25. De même, s!=12 , ce qui signifie que s n'est pas égal à 12, est évalué à TRUE. Le &&est l'opérateur ET et suit la règle selon laquelle si toutes les conditions individuelles sont VRAIES, l'instruction entière est VRAIE.

45) Décrivez l'ordre de priorité en ce qui concerne les opérateurs en C.

L'ordre de priorité détermine quelle opération doit avoir lieu en premier dans une instruction d'opération ou une instruction conditionnelle. Au niveau de priorité le plus élevé se trouvent les opérateurs unaires !, +, – et &. Il est suivi des opérateurs mathématiques habituels (*, / et module % en premier, suivis de + et -). Viennent ensuite les opérateurs relationnels <, <=,>=et>. Ceci est ensuite suivi des deux opérateurs d'égalité ==et !=. Les opérateurs logiques &&et || sont ensuite évalués. Au dernier niveau se trouve l'opérateur d'affectation =.

46) Qu'est-ce qui ne va pas avec cette affirmation ? monNom ="Robin" ;

Vous ne pouvez pas utiliser le signe =pour affecter des valeurs à une variable chaîne. Utilisez plutôt la fonction strcpy. L'instruction correcte serait :strcpy(myName, "Robin");

47) Comment déterminez-vous la longueur d'une valeur de chaîne stockée dans une variable ?

Pour obtenir la longueur d'une valeur de chaîne, utilisez la fonction strlen(). Par exemple, si vous avez une variable nommée FullName, vous pouvez obtenir la longueur de la valeur de chaîne stockée en utilisant cette instruction :I =strlen(FullName); la variable I aura maintenant la longueur en caractères de la valeur de la chaîne.

48) Est-il possible d'initialiser une variable au moment où elle a été déclarée ?

Oui, vous n'avez pas besoin d'écrire une instruction d'affectation séparée après la déclaration de la variable, à moins que vous ne prévoyiez de la modifier ultérieurement. Par exemple :char planet[15] =« Terre » ; fait deux choses :il déclare une variable chaîne nommée planète, puis l'initialise avec la valeur "Terre".

49) Pourquoi le langage C est-il considéré comme un langage de niveau intermédiaire ?

En effet, le langage C est riche en fonctionnalités qui le font se comporter comme un langage de haut niveau tout en pouvant interagir avec le matériel à l'aide de méthodes de bas niveau. L'utilisation d'une approche bien structurée de la programmation, associée à des mots de type anglais utilisés dans les fonctions, en fait un langage de haut niveau. D'autre part, C peut accéder directement aux structures de mémoire similaires aux routines du langage d'assemblage.

50) Quelles sont les différentes extensions de fichiers impliquées lors de la programmation en C ?

Les codes sources en C sont enregistrés avec l'extension de fichier .C. Les fichiers d'en-tête ou les fichiers de bibliothèque ont l'extension de fichier .H. Chaque fois qu'un code source de programme est compilé avec succès, il crée un fichier objet .OBJ et un fichier exécutable .EXE.

51) Que sont les mots réservés ?

Les mots réservés sont des mots qui font partie de la bibliothèque standard du langage C. Cela signifie que les mots réservés ont une signification particulière et ne peuvent donc pas être utilisés à des fins autres que celles pour lesquelles ils sont initialement destinés. Des exemples de mots réservés sont int, void et return.

52) Qu'est-ce qu'une liste liée ?

Une liste chaînée est composée de nœuds qui sont connectés les uns aux autres. En programmation C, les listes chaînées sont créées à l'aide de pointeurs. L'utilisation de listes chaînées est un moyen efficace d'utiliser la mémoire pour le stockage.

53) Qu'est-ce que le FIFO ?

En programmation C, il existe une structure de données connue sous le nom de file d'attente. Dans cette structure, les données sont stockées et accessibles en utilisant le format FIFO, ou First-In-First-Out. Une file d'attente représente une ligne dans laquelle les premières données stockées seront également les premières accessibles.

54) Que sont les arbres binaires ?

Les arbres binaires sont en fait une extension du concept de listes chaînées. Un arbre binaire a deux pointeurs, un gauche et un droit. Chaque côté peut encore se ramifier pour former des nœuds supplémentaires, chaque nœud ayant également deux pointeurs.

55) Tous les mots réservés ne sont pas écrits en minuscules. VRAI ou FAUX ?

FAUX. Tous les mots réservés doivent être écrits en minuscules; sinon le compilateur C interpréterait cela comme non identifié et invalide.

56) Quelle est la différence entre l'expression "++a" et "a++" ?

Dans la première expression, l'incrément se produirait d'abord sur la variable a, et la valeur résultante serait celle à utiliser. Ceci est également connu sous le nom d'incrément de préfixe. Dans la deuxième expression, la valeur courante de la variable a serait celle à utiliser dans une opération, avant que la valeur de a elle-même ne soit incrémentée. Ceci est également connu sous le nom d'incrément de suffixe.

57) Qu'arriverait-il à X dans cette expression :X +=15 ; (en supposant que la valeur de X est 5)

X +=15 est une courte méthode d'écriture X =X + 15, donc si la valeur initiale de X est 5, alors 5 + 15 =20.

58) En langage C, les variables NAME, name et Name sont toutes identiques. VRAI ou FAUX ?

FAUX. Le langage C est un langage sensible à la casse. Par conséquent, NAME, name et Name sont trois variables uniquement différentes.

59) Qu'est-ce qu'une boucle sans fin ?

Une boucle sans fin peut signifier deux choses. La première est qu'il a été conçu pour boucler en continu jusqu'à ce que la condition dans la boucle soit remplie, après quoi une fonction d'interruption ferait sortir le programme de la boucle. Une autre idée d'une boucle sans fin est lorsqu'une condition de boucle incorrecte a été écrite, provoquant l'exécution erronée de la boucle pour toujours. Les boucles sans fin sont souvent appelées boucles infinies.

60) Qu'est-ce qu'un organigramme de programme et comment aide-t-il à écrire un programme ?

Un organigramme fournit une représentation visuelle de la procédure étape par étape vers la résolution d'un problème donné. Les organigrammes sont constitués de symboles, chaque symbole prenant la forme de différentes formes. Chaque forme peut représenter une entité particulière dans l'ensemble de la structure du programme, comme un processus, une condition ou même une phase d'entrée/sortie.

61) Qu'est-ce qui ne va pas avec cet énoncé de programme ? vide =10 ;

Le mot vide est un mot réservé en langage C. Vous ne pouvez pas utiliser de mots réservés comme variable définie par l'utilisateur.

62) Cet énoncé de programme est-il valide ? INT =10,50 ;

En supposant que INT est une variable de type float, cette instruction est valide. On peut penser que INT est un mot réservé et ne doit pas être utilisé à d'autres fins. Cependant, rappelez-vous que les mots réservés sont exprimés en minuscules, de sorte que le compilateur C ne l'interprétera pas comme un mot réservé.

63) Quels sont les vrais arguments ?

Lorsque vous créez et utilisez des fonctions qui doivent effectuer une action sur certaines valeurs données, vous devez transmettre ces valeurs données à cette fonction. Les valeurs transmises à la fonction appelée sont appelées arguments réels.

64) Qu'est-ce qu'une séquence d'échappement de retour à la ligne ?

Une séquence d'échappement de saut de ligne est représentée par le caractère \n. Ceci est utilisé pour insérer une nouvelle ligne lors de l'affichage des données dans l'écran de sortie. Plus d'espaces peuvent être ajoutés en insérant plus de caractères \n. Par exemple, \n\n insérerait deux espaces. Une séquence d'échappement de nouvelle ligne peut être placée avant l'expression de sortie réelle ou après.

65) Qu'est-ce que la redirection de sortie ?

C'est le processus de transfert de données vers une source de sortie alternative autre que l'écran d'affichage. La redirection de sortie permet à un programme d'enregistrer sa sortie dans un fichier. Par exemple, si vous avez un programme nommé COMPUTE, tapez ceci sur la ligne de commande comme COMPUTE> DATA peut accepter l'entrée de l'utilisateur, effectuer certains calculs, puis rediriger la sortie vers un fichier nommé DATA, au lieu de l'afficher à l'écran .

66) Que sont les erreurs d'exécution ?

Ce sont des erreurs qui se produisent lors de l'exécution du programme. Un cas courant dans lequel des erreurs d'exécution peuvent se produire est lorsque vous essayez de diviser un nombre par zéro. Lorsque des erreurs d'exécution se produisent, l'exécution du programme s'interrompt, indiquant la ligne de programme à l'origine de l'erreur.

67) Quelle est la différence entre les fonctions abs() et fabs() ?

Ces 2 fonctions effectuent essentiellement la même action, qui consiste à obtenir la valeur absolue de la valeur donnée. Abs() est utilisé pour les valeurs entières, tandis que fabs() est utilisé pour les nombres de type flottant. De plus, le prototype pour abs() est sous , tandis que fabs() est sous .

68) Que sont les paramètres formels ?

Lors de l'utilisation de fonctions dans un programme C, les paramètres formels contiennent les valeurs transmises par la fonction appelante. Les valeurs sont substituées dans ces paramètres formels et utilisées dans toutes les opérations indiquées dans le corps principal de la fonction appelée.

69) Que sont les structures de contrôle ?

Les structures de contrôle prennent en charge les instructions à exécuter dans un programme. Cela signifie que le déroulement du programme ne passe pas nécessairement d'une instruction à la suivante, mais qu'il peut être nécessaire de passer ou de contourner certaines parties alternatives, en fonction du résultat des instructions conditionnelles.

70) Écrivez un fragment de code simple qui vérifiera si un nombre est positif ou négatif

If (num>=0)

printf("number is positive");

else

printf ("number is negative");

71) Quand est-il préférable d'utiliser une instruction "switch" plutôt qu'une instruction "if" ?

L'instruction switch est mieux utilisée lorsqu'il s'agit de sélections basées sur une seule variable ou expression. Cependant, les instructions switch ne peuvent évaluer que les types de données entiers et caractères.

72) Que sont les variables globales et comment les déclarez-vous ?

Les variables globales sont des variables accessibles et manipulables n'importe où dans le programme. Pour rendre une variable globale, placez la déclaration de la variable dans la partie supérieure du programme, juste après la section des directives du préprocesseur.

73) Que sont les types énumérés ?

Les types énumérés permettent au programmeur d'utiliser des mots plus significatifs comme valeurs d'une variable. Chaque élément de la variable de type énumération est en fait associé à un code numérique. Par exemple, on peut créer une variable de type énumération nommée DAYS dont les valeurs sont lundi, mardi… dimanche.

74) Que fait la fonction toupper() ?

Il est utilisé pour convertir n'importe quelle lettre en mode majuscule. Le prototype de la fonction Toupper() est déclaré dans . Notez que cette fonction ne convertira qu'un seul caractère, et non une chaîne entière.

75) Est-il possible d'avoir une fonction comme paramètre dans une autre fonction ?

Oui, c'est autorisé en programmation C. Il vous suffit d'inclure l'intégralité du prototype de fonction dans le champ de paramètre de l'autre fonction où il doit être utilisé.

76) Que sont les tableaux multidimensionnels ?

Les tableaux multidimensionnels sont capables de stocker des données dans une structure à deux dimensions ou plus. Par exemple, vous pouvez utiliser un tableau à 2 dimensions pour stocker la position actuelle des pièces dans une partie d'échecs ou la position des joueurs dans un programme de tic-tac-toe.

77) Quelle fonction en C peut être utilisée pour ajouter une chaîne à une autre chaîne ?

La fonction strcat. Il faut deux paramètres, la chaîne source et la valeur de la chaîne à ajouter à la chaîne source.

78) Quelle est la différence entre les fonctions getch() et getche() ?

Les deux fonctions accepteront une valeur d'entrée de caractère de l'utilisateur. Lors de l'utilisation de getch(), la touche enfoncée n'apparaît pas à l'écran et est automatiquement capturée et affectée à une variable. Lors de l'utilisation de getche(), la touche sur laquelle l'utilisateur a appuyé apparaîtra à l'écran, tout en étant affectée à une variable.

79) Ces deux instructions de programme exécutent-elles la même sortie ? 1) scanf("%c", &lettre); 2) lettre=getchar()

Oui, ils font tous les deux exactement la même chose, qui consiste à accepter la prochaine touche enfoncée par l'utilisateur et à l'affecter à la variable nommée letter.

80) Que sont les types de structure en C ?

Les types de structure sont principalement utilisés pour stocker des enregistrements. Un enregistrement est composé de champs liés. Cela facilite l'organisation d'un groupe de données associées.

81) Que signifient les caractères "r" et "w" lors de l'écriture de programmes qui utiliseront des fichiers ?

"r" signifie "lire" et ouvrira un fichier en entrée dans lequel les données doivent être récupérées. "w" signifie "écrire" et ouvrira un fichier pour la sortie. Les données précédentes qui étaient stockées sur ce fichier seront effacées.

82) Quelle est la différence entre les fichiers texte et les fichiers binaires ?

Les fichiers texte contiennent des données facilement compréhensibles par les humains. Il comprend des lettres, des chiffres et d'autres caractères. D'autre part, les fichiers binaires contiennent des 1 et des 0 que seuls les ordinateurs peuvent interpréter.

83) est-il possible de créer vos propres fichiers d'en-tête ?

Oui, il est possible de créer un fichier d'en-tête personnalisé. Incluez-y simplement les prototypes de fonction que vous souhaitez utiliser dans votre programme et utilisez la directive #include suivie du nom de votre fichier d'en-tête.

84) Qu'est-ce qu'une structure de données dynamique ?

La structure de données dynamique fournit un moyen de stocker des données plus efficacement dans la mémoire. Using dynamic memory allocation, your program will access memory spaces as needed. This is in contrast to static data structure, wherein the programmer has to indicate a fix number of memory space to be used in the program.

85) What are the different data types in C?

The basic data types are int, char, and float. Int is used to declare variables that will be storing integer values. Float is used to store real numbers. Char can store individual character values.

86) What is the general form of a C program?

A C program begins with the preprocessor directives, in which the programmer would specify which header file and what constants (if any) to be used. This is followed by the main function heading. Within the main function lies the variable declaration and program statement.

87) What is the advantage of a random access file?

If the amount of data stored in a file is fairly large, the use of random access will allow you to search through it quicker. If it had been a sequential access file, you would have to go through one record at a time until you reach the target data. A random access file lets you jump directly to the target address where data is located.

88) In a switch statement, what will happen if a break statement is omitted?

If a break statement was not placed at the end of a particular case portion? It will move on to the next case portion, possibly causing incorrect output.

89) Describe how arrays can be passed to a user defined function

One thing to note is that you cannot pass the entire array to a function. Instead, you pass to it a pointer that will point to the array first element in memory. To do this, you indicate the name of the array without the brackets.

90) What are pointers?

Pointers point to specific areas in the memory. Pointers contain the address of a variable, which in turn may contain a value or even an address to another memory.

91) Can you pass an entire structure to functions?

Yes, it is possible to pass an entire structure to a function in a call by method style. However, some programmers prefer declaring the structure globally, then pass a variable of that structure type to a function. This method helps maintain consistency and uniformity in terms of argument type.

92) What is gets() function?

The gets() function allows a full line data entry from the user. When the user presses the enter key to end the input, the entire line of characters is stored to a string variable. Note that the enter key is not included in the variable, but instead a null terminator \0 is placed after the last character.

93) The % symbol has a special use in a printf statement. How would you place this character as part of the output on the screen?

You can do this by using %% in the printf statement. For example, you can write printf(“10%%”) to have the output appear as 10% on the screen.

94) How do you search data in a data file using random access method?

Use the fseek() function to perform random access input/ouput on a file. After the file was opened by the fopen() function, the fseek would require three parameters to work:a file pointer to the file, the number of bytes to search, and the point of origin in the file.

95) Are comments included during the compilation stage and placed in the EXE file as well?

No, comments that were encountered by the compiler are disregarded. Comments are mostly for the guidance of the programmer only and do not have any other significant use in the program functionality.

96) Is there a built-in function in C that can be used for sorting data?

Yes, use the qsort() function. It is also possible to create user defined functions for sorting, such as those based on the balloon sort and bubble sort algorithm.

97) What are the advantages and disadvantages of a heap?

Storing data on the heap is slower than it would take when using the stack. However, the main advantage of using the heap is its flexibility. That’s because memory in this structure can be allocated and remove in any particular order. Slowness in the heap can be compensated if an algorithm was well designed and implemented.

98) How do you convert strings to numbers in C?

You can write you own functions to do string to number conversions, or instead use C’s built in functions. You can use atof to convert to a floating point value, atoi to convert to an integer value, and atol to convert to a long integer value.

99) Create a simple code fragment that will swap the values of two variables num1 and num2.

int temp;

temp = num1;

num1 = num2;

num2 = temp;

100) What is the use of a semicolon (;) at the end of every program statement?

It has to do with the parsing process and compilation of the code. A semicolon acts as a delimiter, so that the compiler knows where each statement ends, and can proceed to divide the statement into smaller elements for syntax checking.

Free PDF Download:C Programming Interview Questions &Answers


Langue C

  1. Principales questions et réponses d'entretien sur le cloud pour 2020
  2. Les meilleurs ordinateurs monocarte en 2021
  3. Des questions sur les robots ? Réponses d'automatisation
  4. Les 3 principaux défis de la préparation des données IoT
  5. Principales plateformes d'analyse de données IoT
  6. Top 10 des plates-formes IIoT
  7. 8 types de cloud computing différents en 2021
  8. 17 meilleurs livres de programmation à lire en 2021
  9. Codes Data Matrix vs codes QR