Banco de preguntas del examen final de lengua C para estudiantes de primer año
1. Preguntas de opción múltiple (***10 preguntas, cada pregunta vale 2 puntos, ***20 puntos. Elija la mejor respuesta entre las respuestas alternativas. Opción múltiple, opción incorrecta y sin opción). no están permitidos)
1. Lo que no es el tipo de datos básico del lenguaje C es ().
A. Tipo de puntero B. Tipo de entero
C. Tipo de carácter D. Tipo real
2 Supongamos: int a=3, b= 4, c= 5,x, y; El valor de la expresión 0 && (x=a)&&(y=b) es ( ).
A, 1 B, 0 C, 3 D, 4
3. Supongamos que la declaración int a=3; entonces el valor de la variable a después de ejecutar la declaración a+=6; para( ).
A, 18 B, -3 C, 9 D, 12
4. Después de ejecutar el siguiente segmento del programa, el valor de salida y es ( )
void main()
{ int a[]={2,4,6,8,10};
int y, *p;
p = &a[0];
y=*p; printf(“%d”,y
}
A, 2 B, 4 C); , 6 D. 8
5. Si hay una declaración de definición: float a[4] entonces el espacio de memoria asignado a la matriz a es ( ) bytes.
A. 20 B. 12 C. 16 C. 10
6. La siguiente descripción es incorrecta ( ).
A. La declaración break se puede utilizar en la declaración while.
B. La declaración de interrupción y la declaración de continuación tienen el mismo efecto.
C. La instrucción break se utiliza en una instrucción de bucle para salir del bucle y finalizarlo antes de tiempo.
D. La instrucción continuar se utiliza en una instrucción de bucle para finalizar este bucle sin terminar todo el bucle.
7. El lenguaje C estipula que en la estructura anidada de la declaración if, else siempre es ().
A. Emparejar con el if más cercano B. Emparejar con el primer if
C Emparejar con el if con la misma posición de sangría D. Emparejar con el if más cercano que aún no lo ha hecho. ha sido emparejado
8. El significado de la declaración "int (*p)( ); " es ( ).
A y p son variables de puntero que apuntan a matrices unidimensionales.
B y p son variables de puntero que apuntan a datos enteros.
C, p es un puntero a una función, que devuelve datos de tipo int.
D. Ninguna de las anteriores es correcta.
9. La siguiente declaración correcta del arreglo bidimensional c es ( ).
A. int c[3][ ]; B. int c(3,4);
C. 3][2];
10. El resultado de salida después de la ejecución del siguiente segmento del programa es ( ).
int x=100, y=200;
printf ("% d", (x, y));
A, 100 B, 200 C. 100,200 D. Error de compilación
2. Complete los espacios en blanco (***7 preguntas, ***10 espacios en blanco, 1 punto por cada espacio en blanco, ***10 puntos. Complete la respuesta en la línea en la pregunta (arriba)
1. Los tres operadores lógicos proporcionados por el lenguaje C son &&, || ;
2. El valor de retorno de la función se obtiene a través de la declaración de retorno en la función.
3. Después de la definición de "int a[ ][3]={{1},{3,2},{4,5,6},{0}};", a[ 2 El valor de ][2] es _6__ _;
4. Para "int *pa[5];" pa es un _puntero de matriz_ con 5 elementos, cada elemento es un puntero a int __ pointer__ de tipo variable;
5. Al siguiente puntero del nodo de cola de la lista enlazada unidireccional se le debe asignar el valor __ NULL___;
6. 1,y =3; x>y; y++), el número de veces que se ejecuta el cuerpo del bucle es 0.
7.int a[5]; la primera dirección de la matriz a es 2000, luego la dirección del elemento a[1] es 2002 y la dirección del elemento a[2] es 2004.
3. Programa de preguntas para rellenar espacios en blanco (***2 preguntas, ***5 espacios en blanco, 4 puntos por cada espacio en blanco, ***20 puntos)
1. El siguiente programa completa el cálculo 1 -1/2+1/3-1/4+1/5+......la suma de los primeros n términos, complete los espacios en blanco.
#include
int main()
{ int i, n, flag;
suma flotante;
scanf("%d", &n);
bandera= 1;
suma=0;
for(i= 1;i<=n; i++ )
{ suma+=(float)bandera/i;
bandera=-bandera ;
}
printf("%.3f\n", sum);
}
2. La función del siguiente programa es ingresar n números enteros desde el teclado y contarlos. números positivos y 0. Para el número de números negativos, complete los espacios en blanco.
#include
void main()
{int a, i, count1,count2,count3;
cuenta1=cuenta2=cuenta3=0;
for(i=1;i<=n;i++)
{ scanf(“%d”, &a);
if(a>0) count1++;
else if(a==0) count2++ ;
else count3++;
}
printf("Números positivos: &d, cero: %d, números negativos: %d\n", count1,count2,count3);
}
4. Preguntas sobre los resultados de ejecutar el programa (***4 preguntas, 6 puntos cada una, ***24 puntos)
1.
void main()
{ int x=1,y=2,t;
int *p1,*p2;
p1=&x; p2=&y;
t=*p1;*p1=*p2;*p2=t;
printf("x=%d,y=% d\n",x,y);
}
El resultado de la operación es:
¡El programa tiene un error y no se puede ejecutar! O escriba:
x=2,y=1
2. Escribe los resultados de la operación del programa.
#include
int max(int a,int b)
{ int c;
c= a>b?a:b;
return(c);
}
int min(int a,int b)
{int c;
c=a
return(c);
}
void main()
{ int a=2,b=6;
printf("max=%d\n",max(a,b)); p>
printf(“min=%d\n”,min(a,b));
}
El resultado de la ejecución es:
El programa tiene Error, no se puede ejecutar. O escriba:
max=6
min=2
3.
#include
void main()
{ int a[3][3]={1,2,3,4 ,5,6,7,8,9};
int i,j,sum=0;
for (i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j) suma=sum+a[i][j];
printf (“sum=%d\n”,sum);
}
El resultado de la operación es:
¡El programa tiene un error y no se puede ejecutar! O escriba:
sum=15
4. Escriba los resultados de ejecución del programa.
void main()
{ int n,f;
n=1;
while(n<=10)
{ f=f*n;
n+=2;
}
printf(“f=%d\n”, &f);
}
El resultado de la operación es:
¡El programa tiene un error y no se puede ejecutar! O escriba:
f=No estoy seguro
5. Preguntas de programación (***2 preguntas, 13 puntos cada una, ***26 puntos)
1. Almacene una matriz en orden inverso, como elementos. 1, 2, 3, 4, 5, almacenado en orden inverso es 5, 4, 3, 2, 1.