Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

100 лучших вопросов и ответов на собеседовании по программированию на C (2021)

1) Как вы строите оператор приращения или оператор декремента в C?

На самом деле есть два способа сделать это. Один из них заключается в использовании оператора инкремента ++ и оператора декремента –. Например, оператор «x++» означает увеличение значения x на 1. Точно так же оператор «x -» означает уменьшение значения x на 1. Другой способ записи операторов приращения — использование обычного знака + плюс или – знак минус. В случае «x++» это можно записать по-другому:«x =x +1».

2) В чем разница между вызовом по значению и вызовом по ссылке?

При использовании вызова по значению вы отправляете значение переменной в качестве параметра функции, тогда как вызов по ссылке отправляет адрес переменной. Кроме того, при вызове по значению на значение параметра не влияет какая-либо выполняемая операция, в то время как в случае вызова по ссылке на значения может влиять процесс внутри функции.

3) Некоторые программисты отлаживают свои программы, помещая символы комментариев в некоторые коды вместо их удаления. Как это помогает в отладке?

Размещение символов комментария /* */ вокруг кода, также называемое «закомментированием», — это способ изоляции некоторых кодов, которые, по вашему мнению, могут вызывать ошибки в программе, без удаления кода. Идея состоит в том, что если код действительно правильный, вы просто удаляете символы комментариев и продолжаете работу. Это также сэкономит ваше время и силы, поскольку вам не придется повторно вводить коды, если вы удалили их в первую очередь.

4) Каков эквивалентный код следующего оператора в формате WHILE LOOP?

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

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

Ответ:

a=1;

while (a<=100) {

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

a++;

}

5) Что такое стек?

Стек — это одна из форм структуры данных. Данные хранятся в стеках с использованием подхода FILO (First In Last Out). В любом конкретном случае доступна только вершина стека, а это означает, что для извлечения данных, хранящихся внутри стека, сначала должны быть извлечены те, которые находятся в верхней части. Хранение данных в стеке также называется PUSH, а извлечение данных — POP.

6) Что такое файл последовательного доступа?

При написании программ, которые будут хранить и извлекать данные в файле, можно присвоить этому файлу различные формы. Файл с последовательным доступом таков, что данные сохраняются в последовательном порядке:одни данные помещаются в файл за другими. Чтобы получить доступ к определенным данным в файле последовательного доступа, данные должны считываться по одному за раз, пока не будет достигнут нужный.

7) Что такое инициализация переменных и почему это важно?

Это относится к процессу, в котором переменной присваивается начальное значение перед ее использованием в программе. Без инициализации переменная будет иметь неизвестное значение, что может привести к непредсказуемым результатам при использовании в вычислениях или других операциях.

8 Что такое спагетти-программирование?

Спагетти-программирование относится к кодам, которые имеют тенденцию запутываться и накладываться друг на друга по всей программе. Такой неструктурированный подход к кодированию обычно объясняется отсутствием опыта у программиста. Спагетти-программирование усложняет программу и затрудняет анализ кодов, поэтому его следует по возможности избегать.

9) Отличие исходных кодов от кодов объектов

Исходные коды — это коды, написанные программистом. Он состоит из команд и других английских ключевых слов, которые должны указывать компьютеру, что делать. Однако компьютеры не смогут понять исходные коды. Поэтому исходники компилируются с помощью компилятора. Результирующие выходные данные представляют собой объектные коды в формате, понятном процессору компьютера. При программировании на C исходные коды сохраняются с расширением файла .C, а коды объектов сохраняются с расширением файла .OBJ

10) Как в программировании на C вставлять символы кавычек (‘ и “) в экран вывода?

Это обычная проблема для начинающих, потому что кавычки обычно являются частью оператора printf. Чтобы вставить символ кавычки как часть вывода, используйте спецификаторы формата \’ (для одинарной кавычки) и \” (для двойной кавычки).

11) Для чего нужен символ «\0»?

Он называется завершающим нулевым символом и используется в основном для обозначения конца строкового значения.

12) В чем разница между символами =и ==?

Символ =часто используется в математических операциях. Он используется для присвоения значения заданной переменной. С другой стороны, символ ==, также известный как «равно» или «эквивалентно», представляет собой оператор отношения, который используется для сравнения двух значений.

13) Что такое оператор модуля?

Оператор модуля выводит остаток от деления. Он использует символ процента (%). Например:10 % 3 =1, то есть при делении 10 на 3 остаток равен 1.

14) Что такое вложенный цикл?

Вложенный цикл — это цикл, который выполняется внутри другого цикла. Другими словами, у вас есть внутренний цикл, который находится внутри внешнего цикла. В этом сценарии внутренний цикл выполняется столько раз, сколько указано внешним циклом. При каждом включении внешнего цикла сначала выполняется внутренний цикл.

15) Какой из следующих операторов неверен и почему? (>=, <=, <>, ==)

<> неверно. Хотя этот оператор правильно интерпретируется как «не равно» при написании условных операторов, это не тот оператор, который следует использовать в программировании на C. Вместо этого необходимо использовать оператор !=для обозначения условия «не равно».

16) Сравните и сопоставьте компиляторы и интерпретаторы.

Компиляторы и интерпретаторы часто имеют дело с тем, как выполняется программный код. Интерпретаторы выполняют программный код построчно, в то время как компиляторы берут программу целиком и перед выполнением преобразуют ее в объектный код. Ключевое отличие здесь в том, что в случае с интерпретаторами программа может столкнуться с синтаксическими ошибками в середине выполнения и остановится на этом. С другой стороны, компиляторы проверяют синтаксис всей программы и приступают к выполнению только в том случае, если синтаксические ошибки не обнаружены.

17) Как объявить переменную, которая будет содержать строковые значения?

Ключевое слово char может содержать только одно символьное значение за раз. Создав массив символов, вы можете хранить в нем строковые значения. Пример:«char MyName[50]; ” объявляет строковую переменную с именем MyName, которая может содержать не более 50 символов.

18) Можно ли использовать фигурные скобки { } для заключения одной строки кода?

Хотя фигурные скобки в основном используются для группировки нескольких строк кода, они все равно будут работать без ошибок, если вы использовали их для одной строки. Некоторые программисты предпочитают этот метод как способ организации кода, чтобы он выглядел более понятным, особенно в условных операторах.

19) Что такое файлы заголовков и как они используются в программировании на C?

Заголовочные файлы также известны как библиотечные файлы. Они содержат две важные вещи:определения и прототипы функций, используемых в программе. Проще говоря, команды, которые вы используете в программировании на C, на самом деле являются функциями, определенными в каждом заголовочном файле. Каждый заголовочный файл содержит набор функций. Например:stdio.h — это заголовочный файл, содержащий определение и прототипы таких команд, как printf и scanf.

20) Что такое синтаксическая ошибка?

Синтаксические ошибки связаны с ошибками в использовании языка программирования. Это может быть команда, написанная с ошибкой, или команда, которая должна была быть введена в режиме нижнего регистра, но вместо этого была введена с символом верхнего регистра. Неуместный символ или отсутствие символа где-то в строке кода также может привести к синтаксической ошибке.

21) Что такое переменные и чем они отличаются от констант?

Переменные и константы на первый взгляд могут выглядеть одинаково в том смысле, что обе они являются идентификаторами, состоящими из одного или нескольких символов (букв, цифр и нескольких допустимых символов). Оба также будут иметь определенное значение. Значения, хранящиеся в переменной, могут быть изменены на протяжении всей программы и могут использоваться в большинстве операций и вычислений. Константы получают значения только один раз, помещая их в начало программы. Это значение не изменяется в программе. Например, вы можете назначить константу с именем PI и присвоить ей значение 3,1415. Затем вы можете использовать его как PI в программе, вместо того, чтобы писать 3.1415 каждый раз, когда вам это нужно.

22) Как получить доступ к значениям в массиве?

Массивы содержат ряд элементов, в зависимости от размера, который вы указали при объявлении переменной. Каждому элементу присваивается номер от 0 до количества элементов-1. Чтобы присвоить или получить значение определенного элемента, обратитесь к номеру элемента. Например:если у вас есть объявление, которое говорит «intscores[5];», то у вас есть 5 доступных элементов, а именно:scores[0], scores[1], scores[2], scores[3] и scores[4]. ].

23) Можно ли использовать тип данных «int» для хранения значения 32768? Почему?

Нет. Тип данных «int» может хранить значения от -32768 до 32767. Чтобы сохранить 32768, вы можете вместо этого использовать «long int». Вы также можете использовать «unsigned int», если не собираетесь хранить отрицательные значения.

24) Можно ли объединить два или более операторов, таких как \n и \t, в одной строке программного кода?

Да, вполне допустимо комбинировать операторов, особенно если в этом есть необходимость. Например:у вас может быть такой код, как «printf («Hello\n\n\'World\'»)», чтобы вывести текст «Hello» в первой строке, а «World», заключенный в одинарные кавычки, появится в следующей строке. две строки.

25) Почему не все файлы заголовков объявляются в каждой программе на C?

Выбор объявления заголовочного файла в начале каждой программы на C будет зависеть от того, какие команды/функции вы будете использовать в этой программе. Поскольку каждый заголовочный файл содержит разные определения функций и прототипы, вы будете использовать только те заголовочные файлы, которые будут содержать нужные вам функции. Объявление всех заголовочных файлов в каждой программе только увеличит общий размер файла и нагрузку на программу, а это не считается хорошим стилем программирования.

26) Когда в функции используется ключевое слово void?

При объявлении функций вы решаете, будет ли эта функция возвращать значение или нет. Если эта функция не будет возвращать значение, например, когда целью функции является отображение некоторых выходных данных на экране, то «void» должно быть помещено в самую левую часть заголовка функции. Когда после выполнения функции ожидается возвращаемое значение, тип данных возвращаемого значения помещается вместо «void».

27) Что такое составные операторы?

Составные операторы состоят из двух или более операторов программы, которые выполняются вместе. Обычно это происходит при обработке условий, в которых выполняется ряд операторов, когда оценивается значение TRUE или FALSE. Составные операторы также могут выполняться в цикле. Фигурные скобки { } помещаются до и после составных операторов.

28) Каково значение алгоритма для программирования на C?

Прежде чем программу можно будет написать, сначала должен быть создан алгоритм. Алгоритм обеспечивает пошаговую процедуру получения решения. Он также действует как схема запуска и завершения программы, включая процессы и вычисления, которые в ней задействованы.

29) В чем преимущество массива перед отдельными переменными?

При хранении нескольких связанных данных рекомендуется использовать массивы. Это связано с тем, что массивы именуются с использованием только одного слова, за которым следует номер элемента. Например:чтобы сохранить 10 результатов тестов одного учащегося, можно использовать 10 различных имен переменных (класс1, класс2, класс3… класс10). С массивами используется только 1 имя, остальные доступны через имя индекса (grade[0],grade[1],grade[2]…grade[9]).

30) Напишите оператор цикла, который будет отображать следующие выходные данные:

1

12

123

1234

12345

Ответ:

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

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

printf("%d",b);

printf("\n");

}

31) Что неправильно в этом утверждении? scanf("%d",какой номер);

Амперсанд &символ должен быть помещен перед именем переменной whatnumber. Размещение &означает, что любое целочисленное значение, введенное пользователем, сохраняется по «адресу» имени переменной. Это распространенная ошибка программистов, часто приводящая к логическим ошибкам.

32) Как вы генерируете случайные числа в C?

Случайные числа генерируются в C с помощью команды rand(). Например:anyNum =rand() будет генерировать любое целое число, начиная с 0, при условии, что anyNum является переменной типа integer.

33) В чем может быть проблема, если допустимое имя функции, такое как tolower(), сообщается компилятором C как неопределенное?

Наиболее вероятная причина этой ошибки в том, что заголовочный файл для этой функции не был указан в верхней части программы. Файлы заголовков содержат определения и прототипы функций и команд, используемых в программе на языке C. В случае «tolower()» код «#include » должен присутствовать в начале программы.

34) Что такое комментарии и как их вставить в программу на C?

Комментарии — это отличный способ добавить в программу некоторые замечания или описания. Он может служить напоминанием о том, что представляет собой программа, или описанием того, почему определенный код или функция были размещены там в первую очередь. Комментарии начинаются с символов /* и заканчиваются символами */. Комментарии могут состоять из одной строки или даже занимать несколько строк. Его можно разместить в любом месте программы.

35) Что такое отладка?

Отладка — это процесс выявления ошибок в программе. Во время компиляции программы обнаруженные ошибки остановят выполнение программы полностью. В этом состоянии программист просматривал возможные части, в которых произошла ошибка. Отладка обеспечивает удаление ошибок и играет важную роль в достижении ожидаемого результата программы.

36) Что делает оператор &&в программном коде?

Оператор &&также называют оператором AND. При использовании этого оператора все указанные условия должны быть ИСТИННЫ, прежде чем можно будет выполнить следующее действие. Если у вас есть 10 условий и все, кроме 1, не оцениваются как ИСТИНА, весь оператор условия уже оценивается как ЛОЖЬ

37) Какая команда или код в программировании на C может использоваться для определения, является ли число нечетным или четным?

В C нет ни одной команды или функции, которая могла бы проверить, является ли число четным или нечетным. Однако это можно сделать, разделив это число на 2, а затем проверив остаток. Если в остатке 0, то это число четное, иначе нечетное. Вы можете написать это в коде как:

if (num % 2 == 0)

printf("EVEN");

else

printf("ODD");

38) Что означает формат %10.2 при включении в оператор printf?

Этот формат используется для двух целей:для установки количества пробелов, отведенных для выходного числа, и для установки количества знаков после запятой. Число до десятичной точки соответствует выделенному пространству, в этом случае для выходного числа будет выделено 10 пробелов. Если количество пробелов, занимаемых выходным номером, меньше 10, дополнительные символы пробела будут вставлены перед фактическим выходным номером. Число после запятой задает количество знаков после запятой, в данном случае это 2 знака после запятой.

39) Что такое логические ошибки и чем они отличаются от синтаксических ошибок?

Программа, содержащая логические ошибки, как правило, проходит процесс компиляции, но результат может отличаться от ожидаемого. Такое случается, когда в код была вставлена ​​неправильная формула, либо была выполнена неверная последовательность команд. С другой стороны, синтаксические ошибки связаны с неправильными командами, написанными с ошибками или не распознанными компилятором.

40) Какие существуют типы управляющих структур в программировании?

В программировании есть 3 основные структуры управления:последовательность, выборка и повторение. Последовательное управление следует потоку выполнения программы сверху вниз, так что сначала выполняется шаг 1, затем шаг 2, и так до тех пор, пока не будет выполнен последний шаг. Выбор имеет дело с условными операторами, которые означают, что коды выполняются в зависимости от оценки условий как ИСТИНА или ЛОЖЬ. Это также означает, что не все коды могут быть выполнены, и внутри есть альтернативные потоки. Повторы также известны как циклические структуры и будут повторять один или два оператора программы, заданные счетчиком.

41) Что такое || оператор и как он работает в программе?

|| также известен как оператор ИЛИ в программировании на C. При использовании || для оценки логических условий любое условие, которое оценивается как ИСТИНА, будет отображать весь оператор условия как ИСТИНА.

42) Можно ли использовать функцию "если" при сравнении строк?

Нет. Команда «если» может использоваться только для сравнения числовых значений и односимвольных значений. Для сравнения строковых значений существует еще одна функция, называемая strcmp, которая работает именно со строками.

43) Что такое директивы препроцессора?

Директивы препроцессора помещаются в начало каждой программы на C. Здесь указываются библиотечные файлы, которые будут зависеть от того, какие функции будут использоваться в программе. Другое использование директив препроцессора — объявление констант. Директивы препроцессора начинаются с символа #.

44) Каков будет результат следующего условного оператора, если значение переменной s равно 10?

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

Результат будет ИСТИННЫМ. Поскольку значение s равно 10, s>=10 оценивается как ИСТИНА, поскольку s не больше 10, но по-прежнему равно 10. s<25 также является ИСТИНА, так как 10 меньше 25. Точно так же, s!=12 , что означает, что s не равно 12, оценивается как TRUE. Оператор &&является оператором И и следует правилу, согласно которому, если все отдельные условия ИСТИННЫ, все утверждение ИСТИННО.

45) Опишите порядок приоритета операторов в C.

Порядок приоритета определяет, какая операция должна выполняться первой в операторе операции или условном операторе. На самом верхнем уровне приоритета находятся унарные операторы !, +, - и &. За ним следуют обычные математические операторы (сначала *, / и модуль %, затем + и -). Далее идут операторы отношения <, <=,>=и>. Затем следуют два оператора равенства ==и !=. Логические операторы &&и || далее оцениваются. На последнем уровне находится оператор присваивания =.

46) Что не так с этим утверждением? моеИмя =«Робин»;

Вы не можете использовать знак =для присвоения значений строковой переменной. Вместо этого используйте функцию strcpy. Правильным выражением будет:strcpy(myName, «Robin»);

47) Как определить длину строкового значения, сохраненного в переменной?

Чтобы получить длину строкового значения, используйте функцию strlen(). Например, если у вас есть переменная с именем FullName, вы можете получить длину сохраненного строкового значения с помощью этого оператора:I =strlen(FullName); переменная I теперь будет иметь длину символа строкового значения.

48) Можно ли инициализировать переменную во время ее объявления?

Да, вам не нужно писать отдельный оператор присваивания после объявления переменной, если только вы не планируете изменить его позже. Например:char planet[15] =«Земля»; делает две вещи:объявляет строковую переменную с именем planet, а затем инициализирует ее значением «Земля».

49) Почему язык C считается языком среднего уровня?

Это связано с тем, что язык C богат функциями, благодаря которым он ведет себя как язык высокого уровня и в то же время может взаимодействовать с оборудованием с использованием низкоуровневых методов. Использование хорошо структурированного подхода к программированию в сочетании с английскими словами, используемыми в функциях, делает его языком высокого уровня. С другой стороны, C может напрямую обращаться к структурам памяти, подобно процедурам языка ассемблера.

50) Какие расширения файлов используются при программировании на C?

Исходные коды на C сохраняются с расширением файла .C. Файлы заголовков или файлы библиотек имеют расширение .H. Каждый раз, когда исходный код программы успешно компилируется, создается объектный файл .OBJ и исполняемый файл .EXE.

51) Что такое зарезервированные слова?

Зарезервированные слова — это слова, которые являются частью стандартной библиотеки языка C. Это означает, что зарезервированные слова имеют особое значение и поэтому не могут использоваться для целей, отличных от тех, для которых они изначально предназначены. Примеры зарезервированных слов:int, void и return.

52) Что такое связанный список?

Связанный список состоит из узлов, связанных друг с другом. В программировании на C связанные списки создаются с помощью указателей. Использование связанных списков — один из эффективных способов использования памяти для хранения.

53) Что такое FIFO?

В программировании на C существует структура данных, известная как очередь. В этой структуре данные хранятся и доступны в формате FIFO или в порядке поступления. Очередь представляет собой строку, в которой первые сохраненные данные будут также первыми доступными.

54) Что такое бинарные деревья?

Двоичные деревья на самом деле являются расширением концепции связанных списков. Бинарное дерево имеет два указателя, левый и правый. Каждая сторона может далее разветвляться, чтобы сформировать дополнительные узлы, каждый из которых также имеет два указателя.

55) Не все зарезервированные слова пишутся строчными буквами. ВЕРНО или НЕВЕРНО?

ЛОЖНЫЙ. Все зарезервированные слова должны быть написаны строчными буквами; в противном случае компилятор C интерпретировал бы это как неопознанное и недопустимое.

56) В чем разница между выражением «++a» и «a++»?

В первом выражении сначала произойдет приращение переменной а, и результирующее значение будет тем, которое будет использоваться. Это также известно как приращение префикса. Во втором выражении текущее значение переменной a будет использоваться в операции до того, как значение самой a будет увеличено. Это также известно как приращение постфикса.

57) Что произойдет с X в этом выражении:X +=15; (при условии, что значение X равно 5)

X +=15 — это краткий способ записи X =X + 15, поэтому, если начальное значение X равно 5, то 5 + 15 =20.

58) В языке C переменные NAME, name и Name одинаковы. ВЕРНО или НЕВЕРНО?

ЛОЖНЫЙ. Язык C чувствителен к регистру. Таким образом, ИМЯ, имя и имя — это три абсолютно разные переменные.

59) Что такое бесконечный цикл?

Бесконечный цикл может означать две вещи. Во-первых, он был разработан для непрерывного цикла до тех пор, пока не будет выполнено условие внутри цикла, после чего функция прерывания заставит программу выйти из цикла. Другая идея бесконечного цикла — это когда было записано неверное условие цикла, из-за чего цикл будет выполняться ошибочно вечно. Бесконечные циклы часто называют бесконечными циклами.

60) Что такое блок-схема программы и как она помогает в написании программы?

Блок-схема обеспечивает визуальное представление пошаговой процедуры решения данной проблемы. Блок-схемы состоят из символов, каждый из которых имеет форму разных фигур. Каждая фигура может представлять определенный объект во всей структуре программы, например процесс, условие или даже фазу ввода/вывода.

61) Что не так с этим оператором программы? пустота =10;

Слово void является зарезервированным словом в языке C. Вы не можете использовать зарезервированные слова в качестве определяемой пользователем переменной.

62) Является ли этот программный оператор допустимым? INT =10,50;

Предполагая, что INT является переменной типа float, это утверждение допустимо. Можно подумать, что INT — это зарезервированное слово, и его нельзя использовать для других целей. Однако помните, что зарезервированные слова написаны строчными буквами, поэтому компилятор C не интерпретирует это как зарезервированное слово.

63) Что такое фактические аргументы?

Когда вы создаете и используете функции, которые должны выполнять действие с некоторыми заданными значениями, вам необходимо передать эти заданные значения этой функции. Значения, которые передаются в вызываемую функцию, называются фактическими аргументами.

64) Что такое escape-последовательность новой строки?

Экранирующая последовательность новой строки представлена ​​символом \n. Это используется для вставки новой строки при отображении данных на экране вывода. Дополнительные пробелы можно добавить, вставив больше символов \n. Например, \n\n вставит два пробела. Escape-последовательность новой строки может быть помещена перед фактическим выходным выражением или после него.

65) Что такое перенаправление вывода?

Это процесс передачи данных на альтернативный источник вывода, отличный от экрана дисплея. Перенаправление вывода позволяет программе сохранять вывод в файл. Например, если у вас есть программа с именем ВЫЧИСЛЕНИЕ, введите ее в командной строке как ВЫЧИСЛЕНИЕ>ДАННЫЕ, чтобы принять ввод от пользователя, выполнить определенные вычисления, а затем перенаправить вывод в файл с именем ДАННЫЕ вместо отображения на экране. .

66) Что такое ошибки времени выполнения?

Это ошибки, возникающие во время выполнения программы. Один из распространенных случаев, когда могут возникнуть ошибки во время выполнения, — это когда вы пытаетесь разделить число на ноль. При возникновении ошибок во время выполнения выполнение программы приостанавливается, показывая, какая строка программы вызвала ошибку.

67) В чем разница между функциями abs() и fabs()?

Эти две функции в основном выполняют одно и то же действие, которое заключается в получении абсолютного значения заданного значения. Abs() используется для целочисленных значений, а fabs() используется для чисел с плавающей запятой. Кроме того, прототип для abs() находится в , а fabs() — в .

68) Что такое формальные параметры?

При использовании функций в программе на языке C формальные параметры содержат значения, переданные вызывающей функцией. Значения подставляются в эти формальные параметры и используются в любых операциях, как указано в основном теле вызываемой функции.

69) Что такое структуры управления?

Структуры управления берут на себя ответственность за выполнение инструкций в программе. Это означает, что поток программы может не обязательно перемещаться от одного оператора к следующему, а скорее может потребоваться передать или пропустить некоторые альтернативные части, в зависимости от результата условных операторов.

70) Напишите простой фрагмент кода, который будет проверять, является ли число положительным или отрицательным

If (num>=0)

printf("number is positive");

else

printf ("number is negative");

71) Когда оператор "switch" предпочтительнее оператора "if"?

Оператор switch лучше всего использовать при работе с выборками, основанными на одной переменной или выражении. Однако операторы switch могут оценивать только целочисленные и символьные типы данных.

72) Что такое глобальные переменные и как их объявлять?

Глобальные переменные — это переменные, к которым можно получить доступ и которыми можно манипулировать в любом месте программы. Чтобы сделать переменную глобальной, поместите объявление переменной в верхнюю часть программы сразу после раздела директив препроцессора.

73) Что такое перечисляемые типы?

Перечислимые типы позволяют программисту использовать более значимые слова в качестве значений переменной. Каждый элемент в переменной перечисляемого типа фактически связан с числовым кодом. Например, можно создать переменную перечисляемого типа с именем DAYS, значениями которой являются понедельник, вторник… воскресенье.

74) Что делает функция toupper()?

Он используется для преобразования любой буквы в режим верхнего регистра. Прототип функции Toupper() объявлен в . Обратите внимание, что эта функция преобразует только один символ, а не всю строку.

75) Можно ли использовать функцию в качестве параметра другой функции?

Да, это разрешено в программировании на C. Вам просто нужно включить весь прототип функции в поле параметра другой функции, где он будет использоваться.

76) Что такое многомерные массивы?

Многомерные массивы способны хранить данные в двухмерной или более размерной структуре. Например, двумерный массив можно использовать для хранения текущего положения фигур в шахматах или положения игроков в программе для игры в крестики-нолики.

77) Какую функцию в C можно использовать для добавления строки к другой строке?

Функция стркат. Он принимает два параметра:исходную строку и строковое значение, добавляемое к исходной строке.

78) В чем разница между функциями getch() и getche()?

Обе функции будут принимать введенное пользователем значение символа. При использовании getch() нажатая клавиша не будет отображаться на экране, а автоматически захватывается и присваивается переменной. При использовании getche() клавиша, нажатая пользователем, появится на экране и в то же время будет назначена переменной.

79) Выполняют ли эти два оператора один и тот же вывод? 1) scanf("%c", &letter); 2) письмо=получитьсимвол()

Да, они оба делают одно и то же:принимают следующую клавишу, нажатую пользователем, и присваивают ее переменной с именем letter.

80) Что такое типы структур в C?

Типы структуры в основном используются для хранения записей. Запись состоит из связанных полей. Это упрощает организацию группы связанных данных.

81) Что означают символы "r" и "w" при написании программ, использующих файлы?

«r» означает «чтение» и открывает файл в качестве входных данных, в котором должны быть получены данные. «w» означает «запись» и открывает файл для вывода. Предыдущие данные, хранившиеся в этом файле, будут удалены.

82) В чем разница между текстовыми файлами и двоичными файлами?

Текстовые файлы содержат данные, которые могут быть легко поняты людьми. Он включает в себя буквы, цифры и другие символы. С другой стороны, двоичные файлы содержат 1 и 0, которые могут интерпретировать только компьютеры.

83) можно ли создавать собственные заголовочные файлы?

Да, можно создать собственный заголовочный файл. Просто включите в него прототипы функций, которые вы хотите использовать в своей программе, и используйте директиву #include, за которой следует имя вашего заголовочного файла.

84) Что такое динамическая структура данных?

Dynamic data structure provides a means for storing data more efficiently into memory. 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


Язык C

  1. Top Cloud Вопросы и ответы на собеседовании на 2020 год
  2. Лучшие одноплатные компьютеры в 2021 году
  3. Вопросы о роботах? Ответы автоматизации
  4. Три основных проблемы подготовки данных IoT
  5. Лучшие платформы анализа данных Интернета вещей
  6. 10 лучших платформ IIoT
  7. 8 различных типов облачных вычислений в 2021 году
  8. 17 лучших книг по программированию для чтения в 2021 году
  9. Коды Data Matrix против QR-кодов
  10. Лучшие новогодние решения 2021 года с программным обеспечением CMMS