top 40 c programming interview questions
Preguntas y respuestas más frecuentes de la entrevista de programación en C:
El lenguaje de programación C fue desarrollado entre 1969 y 1973 por Dennis Ritchie en Bell Labs. Utiliza este nuevo lenguaje de programación para volver a implementar el sistema operativo UNIX.
C es un lenguaje de programación orientado estructurado de alto nivel que se utiliza para requisitos de programación de propósito general. Básicamente, C es una colección de sus funciones de biblioteca. También es flexible para agregar funciones definidas por el usuario e incluirlas en la biblioteca C.
El uso principal del lenguaje de programación C incluye compiladores de lenguaje, sistemas operativos, ensambladores, editores de texto, cola de impresión, controladores de red, programas modernos, bases de datos, intérpretes de idiomas y utilidades.
Preguntas más comunes de la entrevista sobre programación en C
Aquí vamos.
P # 1) ¿Cuáles son las características clave del lenguaje de programación C?
Respuesta: Las características son las siguientes:
- Portabilidad : Es un lenguaje independiente de la plataforma.
- Modularidad: Posibilidad de dividir grandes programas en pequeños módulos.
- Flexibilidad: La posibilidad de que un programador controle el idioma.
- Velocidad: C viene con soporte para la programación del sistema y, por lo tanto, se compila y ejecuta a alta velocidad en comparación con otros lenguajes de alto nivel.
- Extensibilidad : Posibilidad de agregar nuevas funcionalidades por parte del programador.
P # 2) ¿Cuáles son los tipos de datos básicos asociados con C?
Responder:
- En t - Representa el número (entero)
- Flotar - Número con una parte fraccionaria.
- Doble - Valor de coma flotante de doble precisión
- Char - Carácter único
- Vacío - Tipo de propósito especial sin ningún valor.
P # 3) ¿Cuál es la descripción de los errores de sintaxis?
Responder: Los errores / errores que ocurren al crear un programa se denominan errores de sintaxis. Los comandos mal escritos o los comandos de mayúsculas y minúsculas incorrectos, un número incorrecto de parámetros en el método / función de llamada, las discrepancias de tipos de datos se pueden identificar como ejemplos comunes de errores de sintaxis.
P # 4) ¿Cuál es el proceso para crear una declaración de incremento y decremento en C?
Responder: Hay dos métodos posibles para realizar esta tarea.
- Utilice el operador de incremento (++) y decremento (-).
Ejemplo Cuando x = 4, x ++ devuelve 5 y x- devuelve 3.
- Utilice el signo + o - convencional.
Ejemplo Cuando x = 4, use x + 1 para obtener 5 y x-1 para obtener 3.
P # 5) ¿Qué son las palabras reservadas con un lenguaje de programación?
Responder: Las palabras que forman parte de la biblioteca del lenguaje C estándar se denominan palabras reservadas . Esas palabras reservadas tienen un significado especial y no es posible utilizarlas para ninguna actividad que no sea la funcionalidad prevista.
Ejemplo: void, return int.
P # 6) ¿Cuál es la explicación para el puntero colgante en C?
Responder: Cuando hay un puntero que apunta a una dirección de memoria de cualquier variable, pero después de algún tiempo la variable se eliminó de la ubicación de la memoria mientras se mantiene el puntero apuntando a esa ubicación, se conoce como puntero colgante en C.
P # 7) ¿Describe la función estática con su uso?
Responder: Una función, que tiene una definición de función prefijada con una palabra clave estática se define como una función estática. La función estática debe llamarse dentro del mismo código fuente.
P # 8) ¿Cuál es la diferencia entre las funciones abs () y fabs ()?
Responder: Ambas funciones son para recuperar valor absoluto. abs () es para valores enteros y fabs () es para números de tipo flotante. El prototipo de abs () está debajo del archivo de biblioteca y fabs () está debajo.
P # 9) ¿Describe los punteros salvajes en C?
Responder: Los punteros no inicializados en el código C se conocen como Punteros salvajes . Apuntan a una ubicación de memoria arbitraria y pueden causar un mal comportamiento del programa o un bloqueo del programa.
P # 10) ¿Cuál es la diferencia entre ++ a y a ++?
Responder: '++ a' se llama incremento con prefijo y el incremento ocurrirá primero en una variable. 'A ++' se llama incremento de sufijo y el incremento ocurre después del valor de una variable usada para las operaciones.
P # 11) ¿Describe la diferencia entre = y == símbolos en la programación C?
Responder: '==' es el operador de comparación que se utiliza para comparar el valor o la expresión del lado izquierdo con el valor o la expresión del lado derecho.
'=' Es el operador de asignación que se utiliza para asignar el valor del lado derecho a la variable del lado izquierdo.
P # 12) ¿Cuál es la explicación de la función de prototipo en C?
cómo abrir archivos swf en windows 7
Responder: La función prototipo es una declaración de una función con la siguiente información al compilador.
- Nombre de la función.
- El tipo de retorno de la función.
- Lista de parámetros de la función.
En este ejemplo, el nombre de la función es Suma, el tipo de retorno es el tipo de datos entero y acepta dos parámetros enteros.
P # 13) ¿Cuál es la explicación de la naturaleza cíclica de los tipos de datos en C?
Responder: Algunos de los tipos de datos en C tienen una naturaleza característica especial cuando un desarrollador asigna un valor más allá del rango del tipo de datos. No habrá ningún error del compilador y el valor cambia según un orden cíclico. A esto se le llama naturaleza cíclica. Los tipos de datos Char, int, long int tienen esta propiedad. Otros tipos de datos flotantes, dobles y dobles largos no tienen esta propiedad.
P # 14) ¿Describe el archivo de encabezado y su uso en la programación C?
Responder: El archivo que contiene las definiciones y los prototipos de las funciones que se utilizan en el programa se denomina archivo de encabezado. También se conoce como archivo de biblioteca.
Ejemplo: El archivo de encabezado contiene comandos como printf y scanf es del archivo de biblioteca stdio.h.
P # 15) Existe una práctica en la codificación para mantener algunos bloques de código en los símbolos de comentarios que eliminarlos durante la depuración. ¿Cómo afecta esto a la depuración?
Responder: Este concepto se llama comentar y esta es la forma de aislar alguna parte del código que escanea la posible razón del error. Además, este concepto ayuda a ahorrar tiempo porque si el código no es el motivo del problema, simplemente se puede eliminar del comentario.
P # 16) ¿Cuál es la descripción general de las declaraciones de bucle y los tipos de bucle disponibles en C?
Responder: Una declaración que permite la ejecución de declaraciones o grupos de declaraciones de forma repetida se define como un bucle.
El siguiente diagrama explica una forma general de bucle.
Hay 4 tipos de declaraciones de bucle en C.
- Mientras bucle
- En bucle
- Hacer ... mientras bucle
- Bucle anidado
P # 17) ¿Qué es un bucle anidado?
Responder: Un bucle que se ejecuta dentro de otro bucle se denomina bucle anidado . El primer bucle se llama bucle exterior y el bucle interior se llama bucle interior. El bucle interno ejecuta el número de veces definido en un bucle externo.
P # 18) ¿Cuál es la forma general de función en C?
Responder: La definición de función en C contiene cuatro secciones principales.
|_+_|- Tipo de retorno : Tipo de datos del valor de retorno de la función.
- Nombre de la función: El nombre de la función y es importante tener un nombre significativo que describa la actividad de la función.
- Parámetros : Los valores de entrada para la función que se utilizan para realizar la acción requerida.
- Función Cuerpo : Colección de declaraciones que realiza la acción requerida.
P # 19) ¿Qué es un puntero en un puntero en el lenguaje de programación C?
Responder: Una variable de puntero que contiene la dirección de otra variable de puntero se denomina puntero en un puntero. Este concepto des-hace referencia dos veces para apuntar a los datos que contiene una variable de puntero.
En este ejemplo, ** y devuelve el valor de la variable a.
P # 20) ¿Cuáles son los lugares válidos para tener la palabra clave 'descanso'?
Responder: El propósito de la palabra clave Break es sacar el control del bloque de código que se está ejecutando. Solo puede aparecer en declaraciones en bucle o conmutadas.
P # 21) ¿Cuál es la diferencia de comportamiento cuando el archivo de encabezado se incluye entre comillas dobles (“”) y llaves angulares ()?
Responder: Cuando el archivo de encabezado se incluye entre comillas dobles (“”), el compilador busca primero en el directorio de trabajo el archivo de encabezado en particular. Si no lo encuentra, busca el archivo en la ruta de inclusión. Pero cuando el archivo de encabezado se incluye entre llaves angulares (), el compilador solo busca en el directorio de trabajo el archivo de encabezado en particular.
P # 22) ¿Qué es un archivo de acceso secuencial?
Responder: Los programas generales almacenan datos en archivos y recuperan datos existentes de archivos. Con el archivo de acceso secuencial, dichos datos se guardan en un patrón secuencial. Al recuperar datos de dichos archivos, cada uno de los datos se lee uno por uno hasta que se encuentra la información requerida.
P # 23) ¿Cuál es el método para guardar datos en un tipo de estructura de datos de pila?
Responder: Los datos se almacenan en el tipo de estructura de datos Pila utilizando el Primero en entrar, último en salir (FILO) mecanismo. Solo se puede acceder a la parte superior de la pila en una instancia determinada. El mecanismo de almacenamiento se denomina PUSH y la recuperación se denomina POP.
P # 24) ¿Cuál es el significado de los algoritmos de programa C?
Responder: El algoritmo se crea primero y contiene pautas paso a paso sobre cómo debería ser la solución. Además, contiene los pasos a considerar y los cálculos / operaciones requeridos dentro del programa.
P # 25) ¿Cuál es el código correcto para tener la siguiente salida en C usando un bucle for anidado?
Responder:
|_+_|
P # 26) ¿Explica el uso de la función toupper () con un código de ejemplo?
¿Cómo abro archivos dat?
Responder: La función Toupper () se usa para convertir el valor a mayúsculas cuando se usa con caracteres.
Código:
|_+_|Resultado:
P # 27) ¿Cuál es el código en un ciclo while que devuelve la salida del código dado?
|_+_|
Responder:
|_+_|
P # 28) Seleccione el formulario de operador incorrecto en la siguiente lista (==,,> =,<=) and what is the reason for the answer?
Responder: El operador incorrecto es ''. Este formato es correcto al escribir declaraciones condicionales, pero no es la operación correcta indicar no igual en la programación C. Da un error de compilación de la siguiente manera.
Código:
|_+_|
Error:
Q # 29) ¿Es posible usar llaves ({}) para encerrar un código de una sola línea en un programa C?
Responder: Sí, funciona sin ningún error. A algunos programadores les gusta usar esto para organizar el código. Pero el propósito principal de las llaves es agrupar varias líneas de códigos.
P # 30) ¿Describe el modificador en C?
Responder: El modificador es un prefijo del tipo de datos básico que se utiliza para indicar la modificación para la asignación de espacio de almacenamiento a una variable.
Ejemplo- En un procesador de 32 bits, el espacio de almacenamiento para el tipo de datos int es 4. Cuando lo usamos con el modificador, el espacio de almacenamiento cambia de la siguiente manera:
- Int largo: El espacio de almacenamiento es de 8 bits
- Int corto: El espacio de almacenamiento es de 2 bits
P # 31) ¿Cuáles son los modificadores disponibles en el lenguaje de programación C?
Responder: Hay 5 modificadores disponibles en el lenguaje de programación C de la siguiente manera:
- Pequeño
- Largo
- Firmado
- No firmado
- largo largo
P # 32) ¿Cuál es el proceso para generar números aleatorios en el lenguaje de programación C?
Responder: El comando rand () está disponible para este propósito. La función devuelve un número entero que comienza desde cero (0). El siguiente código de muestra demuestra el uso de rand ().
Código:
|_+_|
Producción:
P # 33) ¿Describe la secuencia de escape de nueva línea con un programa de muestra?
Responder: La secuencia de escape Newline está representada por n. Esto indica el punto en el que comienza la nueva línea en el compilador y la salida se crea en consecuencia. El siguiente programa de ejemplo demuestra el uso de la secuencia de escape de nueva línea.
Código:
|_+_|Producción:
Q # 34) ¿Es posible almacenar 32768 en una variable de tipo de datos int?
Responder: El tipo de datos int solo es capaz de almacenar valores entre - 32768 y 32767. Para almacenar 32768, es necesario utilizar un modificador con el tipo de datos int. Long Int puede usar y también si no hay valores negativos, unsigned int también es posible usar.
P # 35) ¿Existe la posibilidad de crear un archivo de encabezado personalizado con lenguaje de programación C?
Responder: Sí, es posible y fácil crear un nuevo archivo de encabezado. Cree un archivo con prototipos de funciones que se utilizan dentro del programa. Incluya el archivo en la sección '#include' de su nombre.
P # 36) ¿Describe la estructura de datos dinámicos en el lenguaje de programación C?
Responder: La estructura de datos dinámica es más eficiente para la memoria. El acceso a la memoria ocurre según lo necesite el programa.
P # 37) ¿Es posible agregar punteros entre sí?
Responder: No hay posibilidad de agregar punteros juntos. Dado que el puntero contiene detalles de la dirección, no hay forma de recuperar el valor de esta operación.
P # 38) ¿Qué es la indirección?
Responder: Si ha definido un puntero a una variable o cualquier objeto de memoria, no hay ninguna referencia directa al valor de la variable. Esto se llama referencia indirecta. Pero cuando declaramos una variable, tiene una referencia directa al valor.
P # 39) ¿Cuáles son las formas de un puntero nulo que se puede utilizar en el lenguaje de programación C?
Respuesta: Los punteros nulos se pueden utilizar de tres formas.
- Como valor de error.
- Como valor centinela.
- Para terminar la indirección en la estructura de datos recursiva.
P # 40) ¿Cuál es la explicación de la programación modular?
Responder: El proceso de dividir el programa principal en una subsección ejecutable se denomina programación de módulos. Este concepto promueve la reutilización.
Conclusión
El interrogador se basa en los conceptos del lenguaje de programación C, incluida la gestión de la memoria con punteros, el conocimiento de su sintaxis y algunos programas de ejemplo que utilizan la estructura de programa Basic C. Con las preguntas se examinan los conocimientos teatrales y prácticos del candidato.
Lectura recomendada
- Preguntas y respuestas de la entrevista
- Algunas preguntas y respuestas complicadas sobre pruebas manuales
- C Vs C ++: 39 diferencias principales entre C y C ++ con ejemplos