Las 100 mejores preguntas y respuestas de entrevistas de programación C (2021)
1) ¿Cómo se construye una instrucción de incremento o decremento en C?
En realidad, hay dos maneras de hacer esto. Una es usar el operador de incremento ++ y el operador de decremento –. Por ejemplo, la declaración “x++” significa incrementar el valor de x en 1. Asimismo, la declaración “x –” significa disminuir el valor de x en 1. Otra forma de escribir declaraciones de incremento es usar el signo convencional + más o – signo menos. En el caso de “x++”, otra forma de escribirlo es “x =x +1”.
2) ¿Cuál es la diferencia entre llamada por valor y llamada por referencia?
Cuando usa Call by Value, está enviando el valor de una variable como parámetro a una función, mientras que Call by Reference envía la dirección de la variable. Además, en Llamada por valor, el valor del parámetro no se ve afectado por ninguna operación que tenga lugar, mientras que en el caso de Llamada por referencia, los valores pueden verse afectados por el proceso dentro de la función.
3) Algunos programadores depuran sus programas colocando símbolos de comentarios en algunos códigos en lugar de eliminarlos. ¿Cómo ayuda esto en la depuración?
Colocar símbolos de comentario /* */ alrededor de un código, también conocido como "comentar", es una forma de aislar algunos códigos que cree que pueden causar errores en el programa, sin eliminar el código. La idea es que si el código es correcto, simplemente elimine los símbolos de comentarios y continúe. También le ahorra tiempo y esfuerzo al tener que volver a escribir los códigos si los ha eliminado en primer lugar.
4) ¿Cuál es el código equivalente de la siguiente instrucción en formato WHILE LOOP?
for (a=1; a<=100; a++) printf ("%d\n", a * a);
Respuesta:
a=1; while (a<=100) { printf ("%d\n", a * a); a++; }
5) ¿Qué es una pila?
Una pila es una forma de una estructura de datos. Los datos se almacenan en pilas utilizando el enfoque FILO (primero en entrar, último en salir). En cualquier instancia en particular, solo se puede acceder a la parte superior de la pila, lo que significa que para recuperar los datos que están almacenados dentro de la pila, los de la parte superior deben extraerse primero. El almacenamiento de datos en una pila también se denomina PUSH, mientras que la recuperación de datos se denomina POP.
6) ¿Qué es un archivo de acceso secuencial?
Al escribir programas que almacenarán y recuperarán datos en un archivo, es posible designar ese archivo en diferentes formas. Un archivo de acceso secuencial es tal que los datos se guardan en orden secuencial:un dato se coloca en el archivo tras otro. Para acceder a un dato en particular dentro del archivo de acceso secuencial, los datos deben leerse uno por uno, hasta llegar al correcto.
7) ¿Qué es la inicialización de variables y por qué es importante?
Esto se refiere al proceso en el que a una variable se le asigna un valor inicial antes de que se use en el programa. Sin la inicialización, una variable tendría un valor desconocido, lo que puede generar resultados impredecibles cuando se usa en cálculos u otras operaciones.
8 ¿Qué es la programación espagueti?
La programación espagueti se refiere a códigos que tienden a enredarse y superponerse a lo largo del programa. Este enfoque no estructurado de la codificación generalmente se atribuye a la falta de experiencia por parte del programador. La programación espagueti hace que un programa sea complejo y que el análisis de los códigos sea difícil, por lo que debe evitarse tanto como sea posible.
9) Diferenciar los códigos fuente de los códigos objeto
Los códigos fuente son códigos que fueron escritos por el programador. Se compone de los comandos y otras palabras clave similares al inglés que se supone que le indican a la computadora qué hacer. Sin embargo, las computadoras no podrían entender los códigos fuente. Por lo tanto, los códigos fuente se compilan mediante un compilador. Los resultados resultantes son códigos de objeto, que están en un formato que puede entender el procesador de la computadora. En la programación C, los códigos fuente se guardan con la extensión de archivo .C, mientras que los códigos objeto se guardan con la extensión de archivo .OBJ
10) En la programación C, ¿cómo se insertan las comillas (' y ") en la pantalla de salida?
Este es un problema común para los principiantes porque las comillas normalmente son parte de una instrucción printf. Para insertar el carácter de comillas como parte de la salida, utilice los especificadores de formato \’ (para comillas simples) y \” (para comillas dobles).
11) ¿Cuál es el uso de un carácter '\0'?
Se denomina carácter nulo de terminación y se utiliza principalmente para mostrar el final de un valor de cadena.
12) ¿Cuál es la diferencia entre el símbolo =y el símbolo ==?
El símbolo =se usa a menudo en operaciones matemáticas. Se utiliza para asignar un valor a una determinada variable. Por otro lado, el símbolo ==, también conocido como “igual a” o “equivalente a”, es un operador relacional que se utiliza para comparar dos valores.
13) ¿Qué es el operador de módulo?
El operador de módulo genera el resto de una división. Hace uso del símbolo de porcentaje (%). Por ejemplo:10 % 3 =1, lo que significa que cuando divides 10 entre 3, el resto es 1.
14) ¿Qué es un bucle anidado?
Un bucle anidado es un bucle que se ejecuta dentro de otro bucle. Ponlo en otro sentido, tienes un bucle interior que está dentro de un bucle exterior. En este escenario, el ciclo interno se realiza el número de veces especificado por el ciclo externo. Por cada giro en el bucle exterior, primero se realiza el bucle interior.
15) ¿Cuál de los siguientes operadores es incorrecto y por qué? (>=, <=, <>, ==)
<> es incorrecto. Si bien este operador se interpreta correctamente como "no igual a" al escribir declaraciones condicionales, no es el operador adecuado para usar en la programación C. En su lugar, se debe usar el operador !=para indicar la condición "no igual a".
16) Comparar y contrastar compiladores de intérpretes.
Los compiladores e intérpretes a menudo se ocupan de cómo se ejecutan los códigos de programa. Los intérpretes ejecutan los códigos de programa una línea a la vez, mientras que los compiladores toman el programa como un todo y lo convierten en código objeto antes de ejecutarlo. La diferencia clave aquí es que, en el caso de los intérpretes, un programa puede encontrar errores de sintaxis en medio de la ejecución y se detendrá a partir de ahí. Por otro lado, los compiladores verifican la sintaxis de todo el programa y solo procederán a la ejecución cuando no se encuentren errores de sintaxis.
17) ¿Cómo se declara una variable que contendrá valores de cadena?
La palabra clave char solo puede contener 1 valor de carácter a la vez. Al crear una matriz de caracteres, puede almacenar valores de cadena en ella. Ejemplo:“char MiNombre[50]; ” declara una variable de cadena llamada MiNombre que puede contener un máximo de 50 caracteres.
18) ¿Se pueden usar llaves { } para encerrar una sola línea de código?
Si bien los corchetes se usan principalmente para agrupar varias líneas de códigos, seguirá funcionando sin errores si los usó para una sola línea. Algunos programadores prefieren este método como una forma de organizar los códigos para que se vean más claros, especialmente en declaraciones condicionales.
19) ¿Qué son los archivos de encabezado y cuáles son sus usos en la programación C?
Los archivos de encabezado también se conocen como archivos de biblioteca. Contienen dos cosas esenciales:las definiciones y prototipos de funciones que se utilizan en un programa. En pocas palabras, los comandos que usa en la programación C son en realidad funciones que se definen desde dentro de cada archivo de encabezado. Cada archivo de encabezado contiene un conjunto de funciones. Por ejemplo:stdio.h es un archivo de encabezado que contiene definiciones y prototipos de comandos como printf y scanf.
20) ¿Qué es un error de sintaxis?
Los errores de sintaxis están asociados con errores en el uso de un lenguaje de programación. Puede ser un comando mal escrito o un comando que debe ingresarse en minúsculas, pero en su lugar se ingresó con un carácter en mayúsculas. Un símbolo fuera de lugar, o la falta de un símbolo, en algún lugar dentro de una línea de código también puede generar un error de sintaxis.
21) ¿Qué son las variables y en qué se diferencian de las constantes?
Las variables y las constantes pueden parecer similares al principio en el sentido de que ambas son identificadores formados por uno o más caracteres (letras, números y algunos símbolos permitidos). Ambos también tendrán un valor particular. Los valores que tiene una variable se pueden modificar a lo largo del programa y se pueden usar en la mayoría de las operaciones y cálculos. A las constantes se les dan valores de una sola vez, colocados al comienzo de un programa. Este valor no se modifica en el programa. Por ejemplo, puede asignar una constante denominada PI y darle un valor 3.1415. Luego puede usarlo como PI en el programa, en lugar de tener que escribir 3.1415 cada vez que lo necesite.
22) ¿Cómo accede a los valores dentro de una matriz?
Las matrices contienen una cantidad de elementos, según el tamaño que le dio durante la declaración de la variable. A cada elemento se le asigna un número del 0 al número de elementos-1. Para asignar o recuperar el valor de un elemento en particular, consulte el número de elemento. Por ejemplo:si tiene una declaración que dice "intscores[5];", entonces tiene 5 elementos accesibles, a saber:puntuaciones[0], puntuaciones[1], puntuaciones[2], puntuaciones[3] y puntuaciones[4 ].
23) ¿Puedo usar el tipo de datos "int" para almacenar el valor 32768? ¿Por qué?
No. El tipo de datos "int" es capaz de almacenar valores de -32768 a 32767. Para almacenar 32768, puede usar "long int" en su lugar. También puede usar "int sin firmar", asumiendo que no tiene la intención de almacenar valores negativos.
24) ¿Se pueden combinar dos o más operadores como \n y \t en una sola línea de código de programa?
Sí, es perfectamente válido combinar operadores, especialmente si surge la necesidad. Por ejemplo:puede tener un código como ” printf (“Hola\n\n\'Mundo\'”)” para generar el texto “Hola” en la primera línea y “Mundo” entre comillas simples para que aparezca en la siguiente. dos líneas.
25) ¿Por qué no se declaran todos los archivos de encabezado en todos los programas C?
La elección de declarar un archivo de encabezado en la parte superior de cada programa C dependería de qué comandos/funciones usará en ese programa. Dado que cada archivo de encabezado contiene diferentes definiciones de funciones y prototipos, usaría solo los archivos de encabezado que contendrían las funciones que necesitará. Declarar todos los archivos de encabezado en cada programa solo aumentaría el tamaño general del archivo y la carga del programa, y no se considera un buen estilo de programación.
26) ¿Cuándo se usa la palabra clave "void" en una función?
Al declarar funciones, decidirá si esa función devolverá un valor o no. Si esa función no devuelve un valor, como cuando el propósito de una función es mostrar algunos resultados en la pantalla, entonces se debe colocar "void" en la parte más a la izquierda del encabezado de la función. Cuando se espera un valor devuelto después de la ejecución de la función, el tipo de datos del valor devuelto se coloca en lugar de "vacío".
27) ¿Qué son las declaraciones compuestas?
Las sentencias compuestas se componen de dos o más sentencias de programa que se ejecutan juntas. Esto generalmente ocurre mientras se manejan condiciones en las que se ejecuta una serie de declaraciones cuando se evalúa un VERDADERO o FALSO. Las sentencias compuestas también se pueden ejecutar dentro de un bucle. Los corchetes { } se colocan antes y después de las declaraciones compuestas.
28) ¿Cuál es la importancia de un algoritmo para la programación en C?
Antes de que se pueda escribir un programa, primero se debe crear un algoritmo. Un algoritmo proporciona un procedimiento paso a paso sobre cómo se puede derivar una solución. También actúa como un modelo sobre cómo comenzará y finalizará un programa, incluidos los procesos y cálculos involucrados.
29) ¿Cuál es la ventaja de una matriz sobre las variables individuales?
Al almacenar múltiples datos relacionados, es una buena idea usar matrices. Esto se debe a que los arreglos se nombran usando solo 1 palabra seguida de un número de elemento. Por ejemplo:para almacenar los 10 resultados de las pruebas de 1 estudiante, se pueden usar 10 nombres de variables diferentes (grado1, grado2, grado3… grado10). Con matrices, solo se usa 1 nombre, el resto son accesibles a través del nombre del índice (grado[0], grado[1], grado[2]… grado[9]).
30) Escriba una declaración de bucle que muestre el siguiente resultado:
1
12
123
1234
12345
Respuesta:
for (a=1; a<=5; i++) { for (b=1; b<=a; b++) printf("%d",b); printf("\n"); }
31) ¿Qué está mal en esta declaración? scanf ("% d", qué número);
Se debe colocar un símbolo &comercial antes del nombre de la variable whatnumber. Colocar &significa que cualquier valor entero ingresado por el usuario se almacena en la "dirección" del nombre de la variable. Este es un error común entre los programadores, que a menudo conduce a errores lógicos.
32) ¿Cómo se generan números aleatorios en C?
Los números aleatorios se generan en C usando el comando rand(). Por ejemplo:anyNum =rand() generará cualquier número entero a partir de 0, asumiendo que anyNum es una variable de tipo entero.
33) ¿Cuál podría ser el problema si el compilador de C informa que un nombre de función válido, como tolower(), no está definido?
La razón más probable detrás de este error es que el archivo de encabezado para esa función no se indicó en la parte superior del programa. Los archivos de encabezado contienen la definición y el prototipo de funciones y comandos utilizados en un programa C. En el caso de “tolower()”, el código “#include
34) ¿Qué son los comentarios y cómo se insertan en un programa C?
Los comentarios son una gran manera de poner algunos comentarios o descripciones en un programa. Puede servir como un recordatorio de qué se trata el programa, o una descripción de por qué se colocó allí un determinado código o función en primer lugar. Los comentarios comienzan con /* y terminan con */ caracteres. Los comentarios pueden ser de una sola línea o incluso pueden abarcar varias líneas. Se puede colocar en cualquier parte del programa.
35) ¿Qué es la depuración?
La depuración es el proceso de identificar errores dentro de un programa. Durante la compilación del programa, los errores que se encuentren impedirán que el programa se ejecute por completo. En este estado, el programador buscaría en las posibles partes donde ocurrió el error. La depuración garantiza la eliminación de errores y juega un papel importante para garantizar que se cumpla el resultado esperado del programa.
36) ¿Qué hace el operador &&en un código de programa?
El &&también se conoce como operador AND. Al usar este operador, todas las condiciones especificadas deben ser VERDADERAS antes de que se pueda realizar la siguiente acción. Si tiene 10 condiciones y todas menos 1 no se evalúan como VERDADERO, la declaración de condición completa ya se evalúa como FALSO
37) En programación C, ¿qué comando o código se puede usar para determinar si un número es par o impar?
No existe un solo comando o función en C que pueda comprobar si un número es par o impar. Sin embargo, esto se puede lograr dividiendo ese número por 2 y luego verificando el resto. Si el resto es 0, entonces ese número es par, de lo contrario, es impar. Puedes escribirlo en código como:
if (num % 2 == 0) printf("EVEN"); else printf("ODD");
38) ¿Qué significa el formato %10.2 cuando se incluye en una instrucción printf?
Este formato se usa para dos cosas:para establecer la cantidad de espacios asignados para el número de salida y para establecer la cantidad de lugares decimales. El número antes del punto decimal es para el espacio asignado, en este caso asignaría 10 espacios para el número de salida. Si el número de espacios ocupados por el número de salida es inferior a 10, se insertarán caracteres de espacio adicional antes del número de salida real. El número después del punto decimal establece el número de lugares decimales, en este caso, son 2 espacios decimales.
39) ¿Qué son los errores lógicos y en qué se diferencian de los errores de sintaxis?
El programa que contiene errores lógicos tiende a pasar el proceso de compilación, pero la salida resultante puede no ser la esperada. Esto sucede cuando se inserta una fórmula incorrecta en el código o se ejecuta una secuencia incorrecta de comandos. Los errores de sintaxis, por otro lado, se ocupan de los comandos incorrectos que están mal escritos o no son reconocidos por el compilador.
40) ¿Cuáles son los diferentes tipos de estructuras de control en la programación?
Hay 3 estructuras de control principales en la programación:Secuencia, Selección y Repetición. El control secuencial sigue un flujo de arriba a abajo en la ejecución de un programa, de modo que primero se realiza el paso 1, seguido del paso 2, hasta que se realiza el último paso. La selección trata con declaraciones condicionales, lo que significa que los códigos se ejecutan según la evaluación de las condiciones como VERDADERO o FALSO. Esto también significa que no todos los códigos pueden ejecutarse y que hay flujos alternativos dentro. Las repeticiones también se conocen como estructuras de bucle y repetirán una o dos declaraciones de programa establecidas por un contador.
41) ¿Qué es || operador y cómo funciona en un programa?
el || también se conoce como el operador OR en la programación C. Al usar || para evaluar condiciones lógicas, cualquier condición que se evalúe como VERDADERA hará que la declaración de condición completa sea VERDADERA.
42) ¿Se puede usar la función "if" para comparar cadenas?
No. El comando "si" solo se puede usar para comparar valores numéricos y valores de un solo carácter. Para comparar valores de cadena, hay otra función llamada strcmp que trata específicamente con cadenas.
43) ¿Qué son las directivas de preprocesador?
Las directivas del preprocesador se colocan al comienzo de cada programa C. Aquí es donde se especifican los archivos de la biblioteca, lo que dependería de las funciones que se utilizarán en el programa. Otro uso de las directivas de preprocesador es la declaración de constantes. Las directivas de preprocesador comienzan con el símbolo #.
44) ¿Cuál será el resultado de la siguiente declaración condicional si el valor de la variable s es 10?
s>=10 &&s <25 &&s!=12
El resultado será VERDADERO. Dado que el valor de s es 10, s>=10 se evalúa como VERDADERO porque s no es mayor que 10 pero sigue siendo igual a 10. s<25 también es VERDADERO ya que 10 es menor que 25. Lo mismo, s!=12 , lo que significa que s no es igual a 12, se evalúa como VERDADERO. El &&es el operador AND, y sigue la regla de que si todas las condiciones individuales son VERDADERAS, la declaración completa es VERDADERA.
45) Describa el orden de precedencia con respecto a los operadores en C.
El orden de precedencia determina qué operación debe realizarse primero en una declaración de operación o declaración condicional. En el nivel de precedencia más alto se encuentran los operadores unarios !, +, – y &. Le siguen los operadores matemáticos regulares (*, / y módulo % primero, seguido de + y -). Los siguientes en la línea son los operadores relacionales <, <=,>=y>. A esto le siguen los dos operadores de igualdad ==y !=. Los operadores lógicos &&y || se evalúan a continuación. En el último nivel está el operador de asignación =.
46) ¿Qué hay de malo en esta declaración? miNombre =“Robin”;
No puede usar el signo =para asignar valores a una variable de cadena. En su lugar, utilice la función strcpy. La declaración correcta sería:strcpy(miNombre, “Robin”);
47) ¿Cómo se determina la longitud de un valor de cadena que se almacenó en una variable?
Para obtener la longitud de un valor de cadena, use la función strlen(). Por ejemplo, si tiene una variable llamada FullName, puede obtener la longitud del valor de cadena almacenado utilizando esta instrucción:I =strlen(FullName); la variable ahora tendré la longitud del carácter del valor de la cadena.
48) ¿Es posible inicializar una variable en el momento en que se declaró?
Sí, no tiene que escribir una declaración de asignación separada después de la declaración de la variable, a menos que planee cambiarla más adelante. Por ejemplo:char planeta[15] =“Tierra”; hace dos cosas:declara una variable de cadena llamada planeta, luego la inicializa con el valor "Tierra".
49) ¿Por qué el lenguaje C se considera un lenguaje de nivel medio?
Esto se debe a que el lenguaje C es rico en funciones que hacen que se comporte como un lenguaje de alto nivel y, al mismo tiempo, puede interactuar con el hardware utilizando métodos de bajo nivel. El uso de un enfoque de programación bien estructurado, junto con palabras parecidas al inglés que se usan en las funciones, hace que actúe como un lenguaje de alto nivel. Por otro lado, C puede acceder directamente a estructuras de memoria similares a las rutinas del lenguaje ensamblador.
50) ¿Cuáles son las diferentes extensiones de archivo involucradas al programar en C?
Los códigos fuente en C se guardan con la extensión de archivo .C. Los archivos de encabezado o los archivos de biblioteca tienen la extensión de archivo .H. Cada vez que se compila correctamente el código fuente de un programa, se crea un archivo de objeto .OBJ y un archivo .EXE ejecutable.
51) ¿Qué son las palabras reservadas?
Las palabras reservadas son palabras que forman parte de la biblioteca del lenguaje C estándar. Esto significa que las palabras reservadas tienen un significado especial y, por lo tanto, no se pueden usar para otros fines que no sean los originales. Ejemplos de palabras reservadas son int, void y return.
52) ¿Qué son las listas enlazadas?
Una lista enlazada se compone de nodos que están conectados entre sí. En la programación C, las listas enlazadas se crean utilizando punteros. El uso de listas enlazadas es una forma eficaz de utilizar la memoria para el almacenamiento.
53) ¿Qué es FIFO?
En programación C, existe una estructura de datos conocida como cola. En esta estructura, los datos se almacenan y se accede a ellos mediante el formato FIFO o First-In-First-Out. Una cola representa una línea en la que los primeros datos que se almacenaron serán los primeros a los que también se podrá acceder.
54) ¿Qué son los árboles binarios?
Los árboles binarios son en realidad una extensión del concepto de listas enlazadas. Un árbol binario tiene dos punteros, uno izquierdo y otro derecho. Cada lado puede ramificarse aún más para formar nodos adicionales, cada uno de los cuales también tiene dos punteros.
55) No todas las palabras reservadas se escriben en minúsculas. ¿VERDADERO o FALSO?
FALSO. Todas las palabras reservadas deben escribirse en minúsculas; de lo contrario, el compilador de C interpretaría esto como no identificado e inválido.
56) ¿Cuál es la diferencia entre la expresión “++a” y “a++”?
En la primera expresión, el incremento ocurriría primero en la variable a, y el valor resultante será el que se utilizará. Esto también se conoce como incremento de prefijo. En la segunda expresión, el valor actual de la variable a sería el que se utilizará en una operación, antes de que se incremente el valor de la misma. Esto también se conoce como incremento de sufijo.
57) ¿Qué le sucedería a X en esta expresión:X +=15; (asumiendo que el valor de X es 5)
X +=15 es un método corto para escribir X =X + 15, por lo que si el valor inicial de X es 5, entonces 5 + 15 =20.
58) En lenguaje C, las variables NOMBRE, nombre y Nombre son todas iguales. ¿VERDADERO o FALSO?
FALSO. El lenguaje C es un lenguaje sensible a mayúsculas y minúsculas. Por lo tanto, NOMBRE, nombre y Nombre son tres variables únicamente diferentes.
59) ¿Qué es un bucle sin fin?
Un bucle sin fin puede significar dos cosas. Una es que fue diseñado para realizar un ciclo continuo hasta que se cumpla la condición dentro del ciclo, después de lo cual una función de interrupción haría que el programa saliera del ciclo. Otra idea de un ciclo sin fin es cuando se escribió una condición de ciclo incorrecta, lo que provocó que el ciclo se ejecutara erróneamente para siempre. Los bucles sin fin a menudo se denominan bucles infinitos.
60) ¿Qué es un diagrama de flujo de programa y cómo ayuda a escribir un programa?
Un diagrama de flujo proporciona una representación visual del procedimiento paso a paso para resolver un problema determinado. Los diagramas de flujo están hechos de símbolos, con cada símbolo en forma de formas diferentes. Cada forma puede representar una entidad particular dentro de toda la estructura del programa, como un proceso, una condición o incluso una fase de entrada/salida.
61) ¿Qué tiene de malo esta declaración del programa? vacío =10;
La palabra void es una palabra reservada en lenguaje C. No puede usar palabras reservadas como una variable definida por el usuario.
62) ¿Es válida esta declaración del programa? INT =10,50;
Asumiendo que INT es una variable de tipo float, esta afirmación es válida. Uno puede pensar que INT es una palabra reservada y no debe usarse para otros fines. Sin embargo, recuerde que las palabras reservadas se expresan en minúsculas, por lo que el compilador de C no las interpretará como una palabra reservada.
63) ¿Qué son los argumentos reales?
Cuando crea y usa funciones que necesitan realizar una acción en algunos valores dados, debe pasar estos valores dados a esa función. Los valores que se pasan a la función llamada se denominan argumentos reales.
64) ¿Qué es una secuencia de escape de nueva línea?
Una secuencia de escape de nueva línea se representa con el carácter \n. Esto se usa para insertar una nueva línea cuando se muestran datos en la pantalla de salida. Se pueden agregar más espacios insertando más caracteres \n. Por ejemplo, \n\n insertaría dos espacios. Se puede colocar una secuencia de escape de nueva línea antes de la expresión de salida real o después.
65) ¿Qué es la redirección de salida?
Es el proceso de transferir datos a una fuente de salida alternativa que no sea la pantalla de visualización. La redirección de salida permite que un programa tenga su salida guardada en un archivo. Por ejemplo, si tiene un programa llamado COMPUTE, escribir esto en la línea de comando como COMPUTE>DATA puede aceptar la entrada del usuario, realizar ciertos cálculos y luego redirigir la salida a un archivo llamado DATA, en lugar de mostrarla en la pantalla. .
66) ¿Qué son los errores de tiempo de ejecución?
Estos son errores que ocurren mientras se ejecuta el programa. Una instancia común en la que pueden ocurrir errores en tiempo de ejecución es cuando intenta dividir un número por cero. Cuando ocurren errores en tiempo de ejecución, la ejecución del programa se detiene y muestra qué línea de programa causó el error.
67) ¿Cuál es la diferencia entre las funciones abs() y fabs()?
Estas 2 funciones básicamente realizan la misma acción, que es obtener el valor absoluto del valor dado. Abs() se usa para valores enteros, mientras que fabs() se usa para números de tipo flotante. Además, el prototipo de abs() está bajo
68) ¿Qué son los parámetros formales?
Al usar funciones en un programa C, los parámetros formales contienen los valores que fueron pasados por la función de llamada. Los valores se sustituyen en estos parámetros formales y se utilizan en las operaciones indicadas en el cuerpo principal de la función llamada.
69) ¿Qué son las estructuras de control?
Las estructuras de control se encargan de qué instrucciones se van a ejecutar en un programa. Esto significa que el flujo del programa puede no pasar necesariamente de una declaración a la siguiente, sino que es posible que sea necesario pasar o pasar por alto algunas partes alternativas, según el resultado de las declaraciones condicionales.
70) Escribe un fragmento de código simple que verificará si un número es positivo o negativo
If (num>=0) printf("number is positive"); else printf ("number is negative");
71) ¿Cuándo es preferible una declaración de "cambio" a una declaración de "si"?
La declaración de cambio se usa mejor cuando se trata de selecciones basadas en una sola variable o expresión. Sin embargo, las declaraciones de cambio solo pueden evaluar tipos de datos de enteros y caracteres.
72) ¿Qué son las variables globales y cómo se declaran?
Las variables globales son variables a las que se puede acceder y manipular en cualquier parte del programa. Para convertir una variable en global, coloque la declaración de la variable en la parte superior del programa, justo después de la sección de directivas del preprocesador.
73) ¿Qué son los tipos enumerados?
Los tipos enumerados permiten al programador usar palabras más significativas como valores para una variable. Cada elemento de la variable de tipo enumerado está realmente asociado con un código numérico. Por ejemplo, se puede crear una variable de tipo enumerado denominada DÍAS cuyos valores sean lunes, martes... domingo.
74) ¿Qué hace la función toupper()?
Se utiliza para convertir cualquier letra a su modo de mayúsculas. El prototipo de la función Toupper() se declara en
75) ¿Es posible tener una función como parámetro en otra función?
Sí, eso está permitido en la programación C. Solo necesita incluir el prototipo de función completo en el campo de parámetro de la otra función donde se utilizará.
76) ¿Qué son las matrices multidimensionales?
Las matrices multidimensionales son capaces de almacenar datos en una estructura de dos o más dimensiones. Por ejemplo, puede usar una matriz bidimensional para almacenar la posición actual de las piezas en un juego de ajedrez o la posición de los jugadores en un programa de tres en raya.
77) ¿Qué función en C se puede usar para agregar una cadena a otra cadena?
La función strcat. Se necesitan dos parámetros, la cadena de origen y el valor de la cadena para agregarse a la cadena de origen.
78) ¿Cuál es la diferencia entre las funciones getch() y getche()?
Ambas funciones aceptarán un valor de entrada de caracteres del usuario. Al usar getch(), la tecla que se presionó no aparecerá en la pantalla y se capturará automáticamente y se asignará a una variable. Al usar getche(), la tecla que presionó el usuario aparecerá en la pantalla, mientras que al mismo tiempo se asigna a una variable.
79) ¿Estas dos sentencias de programa realizan el mismo resultado? 1) scanf(“%c”, &letra); 2) letra=getchar()
Sí, ambos hacen exactamente lo mismo, que es aceptar la siguiente tecla presionada por el usuario y asignarla a la variable con nombre de letra.
80) ¿Qué son los tipos de estructuras en C?
Los tipos de estructura se utilizan principalmente para almacenar registros. Un registro se compone de campos relacionados. Esto facilita la organización de un grupo de datos relacionados.
81) ¿Qué significan los caracteres "r" y "w" al escribir programas que utilizarán archivos?
"r" significa "leer" y abrirá un archivo como entrada en el que se recuperarán los datos. "w" significa "escribir" y abrirá un archivo para la salida. Los datos anteriores que se almacenaron en ese archivo se borrarán.
82) ¿Cuál es la diferencia entre archivos de texto y archivos binarios?
Los archivos de texto contienen datos que los humanos pueden entender fácilmente. Incluye letras, números y otros caracteres. Por otro lado, los archivos binarios contienen 1 y 0 que solo las computadoras pueden interpretar.
83) ¿Es posible crear sus propios archivos de encabezado?
Sí, es posible crear un archivo de encabezado personalizado. Simplemente incluya en él los prototipos de funciones que desea usar en su programa y use la directiva #include seguida del nombre de su archivo de encabezado.
84) ¿Qué es la estructura de datos dinámica?
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
Lenguaje C
- Principales preguntas y respuestas de la entrevista sobre la nube para 2020
- Las mejores computadoras de placa única en 2021
- ¿Preguntas sobre el robot? Respuestas de automatización
- Los 3 principales desafíos de preparar datos de IoT
- Principales plataformas de análisis de datos de IoT
- Las 10 mejores plataformas de IIoT
- 8 tipos diferentes de computación en la nube en 2021
- Los 17 mejores libros de programación para leer en 2021
- Respuestas a las cuatro preguntas principales sobre las leyes de serialización de Rusia
- Códigos de matriz de datos frente a códigos QR
- Principales propósitos de Año Nuevo para 2021 con el software CMMS