Encuentra la salida de los programas en C (matrices)

aprender: En este artículo podemos mejorar nuestro conocimiento en relación con matriz en C mediante la resolución y la búsqueda de la salida de algunos programación C preguntas de la matriz de tópicos .

Aquí encontrará los programas en C con la producción y explicaciones basadas en matriz.

1) ¿Qué pasará if asignamos un valor a un elemento de matriz cuyo tamaño del subíndice es mayor que el tamaño de la matriz en programación C? se produce

  1. Una compilación de error.
  2. El elemento se establecerá 0.
  3. El programa se bloquea en tiempo de ejecución.
  4. El tamaño de la matriz aumenta automáticamente.

salida

C) The program crashes at run time.

Explicación

programación en C if asignamos un valor de elemento de la matriz cuyo tamaño del subíndice es mayor que el tamaño del subíndice de la matriz a continuación, se bloquea en tiempo de ejecución debido gama han fijado tamaño para la gestión de datos. No podemos ampliar o reducir el tamaño de la matriz. Debido a este inconveniente de la matriz, se forma lista enlazada. En lista enlazada podemos aumentar o disminuir el tamaño. Pero ahora modernos compiladores gcc se hará cargo de este tipo de errores.

Ejecutar el programa a continuación del programa, que se colgará en Turbo C compilador.

#include <stdio.h>
int main()
{
int arr[10];
arr[15]=200;
printf("%d",arr[15]);
return 0;
}

2) En C, if usuario pasa matriz como un argumento a continuación, lo que realmente conseguir pases?

  1. dirección de Base de la matriz será pasado.
  2. Valor del primer elemento se pasa.
  3. Valor del último elemento es pases.
  4. Dirección del último elemento se pasa.

salida

A) Base address of the array will be passed.

Explicación

En esta declaración pregunta A es correcta, la programación en C (Turbo C) cuando se pasa un array como argumento de cualquier función a continuación, la dirección base de la matriz será pasado.

Ejemplo:

#include <stdio.h>
int main()
{
int arr[2][2]={ 1, 2, 3, 4 };
printf("%un", arr);
return 0;
}

salida

10485312

Por lo tanto, en el programa por encima de la salida es la dirección base de arr .

3) ¿Cuál será la salida del siguiente programa en Turbo C?

#include <stdio.h>
int main()
{
int arr[8];
int n=0;
while(n<8)
{
arr[n]=++n;
}
for(n=0; n<8; n++)
{
printf("%d, ",arr[n]);
}
return 0;
}

  1. 1, 2, 3, 4, 5, 6, 7,
  2. 1, 2, 3, 4, 5, 6, 7, 8,
  3. 0, 1, 2, 3, 4, 5, 6, 7,
  4. valor basura, 1, 2, 3, 4, 5, 6, 7,

salida

D) Garbage value, 1, 2, 3, 4, 5, 6, 7,

Explicación

En esta pregunta valor de basura se asigna en primera arr elemento [0] porque debido a ++ n operador primer valor de la variable n incrementado en 1 y luego en un [1] se le asigna el valor 1. Por lo tanto ningún valor se asigna en a [0]. Es por eso que tenemos el valor de la basura en ella.

4) ¿Cuál será la salida del siguiente programa en C?

#include <stdio.h>
int main()
{
char arr[]={ 'A', 'B', 'c', 'd', 'E', 'f' };
int size=sizeof(arr)/sizeof(arr[0]);
printf("%dn", size);
return 0;
}

  1. 0
  2. 6
  3. 12
  4. 1

salida

B) 6

Explicación

Los tamaños de función de las declaraciones de la variable dada.

Ejemplo:

char a='A'; 
sizeof(a) is 1 byte
Step 1: char arr[]={ 'A', 'B', 'c', 'd', 'E', 'f' };
The variablearr is declared as character array and it is initialized
with the values.
Step 2: int size=sizeof(arr)/sizeof(arr[0]);
The variablearr has 6 elements. The size of the char variable is 1 byte.
Hence 6 elements x 1 bytes = 6 bytes
sizeof(arr[0]) is 1 bytes
Hence 6/1 is 6 bytes
Hence the output of the program is '6'.

5) ¿Cuál será la salida del siguiente código?

#include <stdio.h>
int main()
{
int a[2][2] = { 1, 2, 3, 4 };
int *p;
p= &a[1][1];
printf("%dn",*p);
return 0;
}

  1. 1
  2. 2
  3. 3
  4. 4

salida

D) 4

Explicación

Step 1 :- 
int a[2][2] = { 1, 2, 3, 4 };
The variable a is declare as multi dimension integer array with size
2 rows and 2 columns.
Step 2 :-
int *p;
A integer pointer variable p is declared.
Step 3 :-
p= &a[1][1];
Then address of a[1][1] is stored in pointer variable p.
Step 4 :-
printf("%dn",*p);
The value of at address p is printed.
And the value at address p is value of a[1][1].
Hence output result is '4'.

mensajes recomendados

  • Búsqueda de salida de los programas en C (if declaración else) | set 1
  • Encuentra la salida de los programas en C (if declaración else) | conjunto 2
  • Encuentra la salida de los programas en C (bit a bit Operadores) | Set 1
  • Encuentra la salida de los programas en C (bit a bit Operadores) | Set 2
  • Encuentra la salida de los programas en C (Strings) | Set 1
  • Encuentra la salida de los programas en C (Strings) | Set 2
  • Encuentra la salida de los programas C (Estructuras) | Set 1
  • Encuentra la salida de los programas en C (temas mixtos) | Set 1
  • Encuentra la salida de los programas en C (temas mixtos) | Set 2
  • Encuentra la salida de los programas en C (temas mixtos) | Set 3
  • Encuentra la salida de los programas C (Personaje) | Set 1
  • Encuentra la salida de los programas en C (coma flotante) | Set 1
  • Encuentra la salida de los programas en C (Para bucles) | Set 1


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *