Red de conocimiento del abogados - Ley de patentes - Examen Nacional de Computación de Grado Nivel 2 Preguntas y respuestas de la prueba escrita de lenguaje C en el primer semestre de 2009

Examen Nacional de Computación de Grado Nivel 2 Preguntas y respuestas de la prueba escrita de lenguaje C en el primer semestre de 2009

1. Preguntas de opción múltiple (2 puntos cada una, total 70 puntos)

1. (1) ¿Cuál de las siguientes afirmaciones es correcta?

A) La pila es una lista lineal de primero en entrar, primero en salir

B) La cola es una lista lineal de "primero en entrar, último en salir"

C) La cola circular es una estructura no lineal

D )Una tabla lineal ordenada puede utilizar una estructura de almacenamiento secuencial o una estructura de almacenamiento encadenada

2.

(2) La La estructura de datos que admite llamadas a subrutinas es

A) Pila

B) Árbol

C) Cola

D) Árbol binario

p>

3.

(3) Un determinado árbol binario tiene 5 nodos que leen 2, entonces el número de nodos hoja en el árbol binario es

A)10

B)8

C)6

D)4

4.

(4) Entre los siguientes métodos de clasificación, el que tiene el menor número de comparaciones en el peor de los casos es

A) Clasificación por burbujas

B) Clasificación por selección simple

C) Directa clasificación por inserción

D) clasificación en montón

(5) El software se puede dividir en: software de aplicación, software de sistema y software de soporte (o software de herramienta) según sus funciones. Los siguientes

son software de aplicación

A) compilador

B) sistema operativo

C) sistema de gestión educativa

D) Programa ensamblador

6.

(6) ¿Qué está mal en la siguiente descripción?

A) El propósito de las pruebas de software es encontrar errores y Corrección de errores

B) La "ubicación del error" del programa que se está depurando es un paso necesario en la depuración del programa

C) La depuración del programa también se convierte en Depuración

D ) Las pruebas de software deben implementar estrictamente el plan de pruebas para eliminar la arbitrariedad en las pruebas

7.

(7) El acoplamiento y la cohesión son dos criterios para medir la independencia del módulo.

¿Cuál de las siguientes afirmaciones es correcta?

A) Mejorar el acoplamiento y reducir la cohesión es beneficioso para mejorar la independencia del módulo

B) Reducir el acoplamiento y aumentar la cohesión es beneficioso para mejorar la independencia del módulo independencia Independencia

C) El acoplamiento se refiere a la estrecha interconexión entre los distintos elementos dentro de un módulo

D) La cohesión se refiere a la estrecha conexión mutua entre los módulos

8.

(8) El tema central en el sistema de aplicación de bases de datos es

A) Diseño de bases de datos

B) Diseño de sistemas de bases de datos

C) Mantenimiento de la base de datos

D) Capacitación del administrador de la base de datos

9.

(9) Existen dos relaciones R y S de la siguiente manera:

La relación S se obtiene de la relación R mediante operación, entonces la operación utilizada es

A) selección

B) proyección

C) Insertar

D) Conexión

10.

(10) Al convertir el diagrama E-R al modo relacional, tanto las entidades como las relaciones se pueden expresar como

A) Atributos

B) Claves

C) Relaciones

D) Dominios

11) El siguientes opciones El identificador legal en es

A)1_1

B)1-1

C)_11

D)1_ _

12.

(12) Si hay una declaración de definición en la función: int k;, entonces

A) El sistema asignará automáticamente una valor de 0 a k

p>

B) Este es un valor indefinido en k

C) El sistema asignará automáticamente un valor inicial de -1 a k

D) No hay ningún valor en k en este momento

13.

(13) Entre las siguientes opciones, la que se puede usar como constante de datos es

A)o115

B)0118

C)1.5e1.5

D)115L

14.

(14) tiene una definición: int x=2 ;, entre las siguientes expresiones, el valor que no es 6 es

A)x*=x 1

B)X , 2*x

C) x*=(1 x)

D)2*x, x =2

15 .

(15) Segmento de programa: int x=12; El resultado de salida de double y=3.141593; printf("d8.6f", x, y es

A); )123.141593

B)12 3.141593

C)12, 3.141593

D)123.1415930

16.

(16) Si hay una declaración de definición: double x, y, *px, *py; Después de ejecutar px=amp;x;py=amp;y;, la declaración de entrada correcta es

A ) scanf("ff",x,y);

B) scanf("ff" amp;x,amp;y);

C)scanf("lfle", px,py);

D)scanf("lflf",x , y);

17.

(17) La siguiente es la forma básica de declaración if:

declaración if (expresión)

Donde "expresión"

A) debe ser una expresión lógica

B) debe ser una expresión relacional

C) debe ser una expresión lógica o expresión de relación

D) puede ser cualquier expresión legal

18.

(18) tiene el siguiente programa

#include lt ;stdio.hgt;

main()

{ int x;

escanf

("d",&x);

if(xlt;=3); else

if(x!=10) printf("d\n",x) ;

}

Cuando el programa se está ejecutando, ¿en qué rango se generará el valor de entrada?

A) Un número entero distinto de 10

B) Un número entero mayor que 3 y distinto de 10

C) Un número entero mayor que 3 o igual a 10

D) Un número entero menor que 3

19.

(19) tiene el siguiente programa

#include lt; >{ int a=1 , b=2, c=3, d=0;

if (a==1 amp; amp; b ==2)

if ( b!=2|| c--!=3)

printf("d, d, d\n", a, b, c); d, d, d\ n", a, b, c);

else printf("d, d, d\n", a, b, c);

}

El resultado de salida después de ejecutar el programa es

A) 1, 2, 3

B) 1, 3, 2

C) 1, 3, 3

D) 3, 2, 1

20.

(20) Las variables en el siguiente segmento del programa han sido correctamente definido

for (i=0; ilt; 4; i, j)

for(k=1; klt; 3; k);

Segmento del programa El resultado de salida es

A)*******

B)****

C)**

D)*

21.(21) Existe el siguiente programa

#include lt;hgt;

main()

{ char *s={"ABC"};

hacer

{ printf("d", *s10); s;

}

while (*s);

}

Nota: El valor del código ASCII de la letra A es 65 .

El resultado de salida después de ejecutar el programa es

A)5670

B)656667

C)567

D)ABC

22.

(22) Suponiendo que las variables se han definido correctamente, el siguiente segmento del programa que no puede contar el número de caracteres de entrada en una línea (excluyendo los retornos de carro) es

A)n=0; mientras((ch=getchar())!=~\n~)n ;

B)n=0; n~)n ;

C)for(n=0;getchar()!=~\n~;n );

D)n=0;for(ch= getchar(); ch!=~\n~; n );

23.

(23) tiene el siguiente programa

#include lt;stdio .hgt;

p>

main()

{ int a1, a2; char c1, c2

scanf("dcdc", amp; ; a1, amperio; c1, a2, amperio;

printf("d, c, d, c", a1, c1, a2, c2); >}

Si ingresa a través del teclado de modo que el valor de a1 sea 12, el valor de a2 es 34, el valor de c1 es el carácter a y el valor de c2 es el carácter b.

La salida del programa es: 12, a, 34, b El formato de entrada correcto es (el siguiente _ representa un espacio, lt; CRgt; representa un retorno de carro)

A)12a34blt ;CRgt;

B)12_a_34_blt;CRgt;

C)12, a, 34, CRgt;

D) 12_a34_blt; p>

24.

(24) tiene el siguiente programa

#include lt;stdio.hgt;

int f(int x, int y)

{ return ((y-x)*x);}

main()

{ int a=3, b=4, c=5 , d;

d=f(f(a, b), f(a,c));

printf("d\n",d);

}

El resultado de salida después de ejecutar el programa es

p>

A)10

B)9

C )8

D)7

25.

(25) tiene el siguiente programa

#include stdio.hgt;

void fun(char *s)

{ while(* s)

{ if (*s2==0) printf("c", * s);

s;

}

}

principal()

{ char a[] ={"good"};

fun(a); printf("\n" );

}

Nota: El valor del código ASCII la letra a es 97 y el resultado de salida después de ejecutar el programa es

A)d

B)go

C)god

D)bueno

26.

(26) tiene el siguiente programa

#include lt stdio.hgt;

void; diversión(int *a, int *b)

{ int *c;

c =a;

a=b; b=c;

}

principal()

{ int x=3, y=5, *p=x, *q=amp;y;

fun(p, q); printf("d,d,", *p, *q);

fun(amp;x, amp; y); printf ("d, d\n", *p, *q

}

El resultado de salida después de ejecutar el programa es

;

A)3,5,5,3

B)3,5,3,5

C)5,3,3,5

D )5, 3, 5, 3

27.

(27) tiene el siguiente programa

#include lt;stdio.hgt;

void f(int *p, int *q);

main()

{ int m=1, n=2, *r=amp;m ;

p>

f(r, amp; n); printf("d, d", m, n

}

void f( int *p, int *q)

{p=p 1; *q=*q 1;}

El resultado de salida después de ejecutar el programa es

A) 1, 3

B)2,3

C)1,4

D)1,2

28 .

(28) La siguiente función genera los datos en la matriz en 8 por línea

#include lt; stdio.hgt;

void fun(int *w, int n)

{ int i;

for(i=0; ilt; n; i )

{ ____________

printf("d " , w[i]);

}

printf("\n"); p>El subrayado debe completarse La declaración es

A)if(i/8==0) printf("\n");

B)if(i/ 8==0) continuar;

C)if(i8==0) printf("\n");

D)if(i8==0) continuar;

29.

(29) Si existe la siguiente definición

int x[10], *pt=x;

Entonces la referencia correcta al elemento de la matriz es

A)*&x[10]

B)*(x 3)

C)*(pt 10)

D) pt 3

30.

(30) tiene la definición: char s[81]; int i=0;, lo siguiente no puede ser una línea (no más de 80 caracteres) con La declaración o grupo de declaraciones correcto para leer la cadena con espacios

es

A)gets(s);

B)mientras((s[i] =getchar())!=~\n~); s[i]=~\0~

C)scanf("s", s) ;

D) hacer{scanf("c",amp;s[i]);} while(s[i]!=~\n~);s[i]=~\0~ ;

31.

(31) tiene el siguiente programa

#include lt; /p>

{ char *a[ ]={"abcd", "ef", "gh", "ijk"};

i;

for(i=0;ilt;4;i) printf("c",*a[i]);

}

Programa El resultado de salida después de ejecutar es

A)aegi

B)dfhk

C)dfhk

D)abcdefghijk

32.

(32) El grupo de declaraciones correcto en las siguientes opciones es

A)char s[]; p >B)char *s; s={"¡LIBRO!"};

C)char s[10]; s ;s="BOOK!";

33.

(33) tiene el siguiente programa

#include lt;stdio.hgt;

int fun(int x, int y)

{ if(x==y) return (x);

else return((x y)/2);

p>

}

main()

{ int a=4, b=5, c=6

printf( "d\n ", fun(2*a, fun(b, c)));

}

El resultado de salida después de ejecutar el programa es

A)3

B)6

C)8

D)12

34.

(34) Suponga que la función Hay una variable entera n in. Para garantizar que su valor inicial sea 0 cuando no se asigna ningún valor inicial, la clase de almacenamiento que debe seleccionarse es

A)auto

B)registro

C)estático

D)auto o registro

35.

(35) tiene el siguiente programa

#include lt; stdio.hgt;

int b=2

int fun(int *k)

{ b=*k b; retorno (b );}

principal()

{ int a[10]={1, 2, 3, 4, 5, 6, 7 , 8}, i;

for(i=2;ilt;4;i) {b=fun(amp;a[i]) b; /p>

printf(" \n");

}

El resultado de salida después de ejecutar el programa es

A)10 12

B)8 10

C)10 28

D)10 16

36.

(36) tiene los siguientes procedimientos

#include lt; stdio.hgt;

#define PT 3.5

#define S(x) PT*x*x;

main()

{ int a=1, b=2; printf("4.1f\n", S(a b));}

El resultado de salida después de ejecutar el programa es

A)14.0

B)31.5

C)7.5

D) El programa tiene un error y no hay resultado de salida

37

(37) Existe el siguiente programa

#include lt;

struct ord

{ int x, y } dt[2]={1, 2, 3, 4};

n()

{ struct ord *p=dt;

printf("d,", p-gt; x); printf("d\n", p-gt); ;y);

}

El resultado de ejecución del programa es

A) 1, 2

B) 2, 3

p>

C) 3, 4

D) 4, 1

38.

(38) tiene una definición macro: #define IsDIV( k, n) ((kn==1)?1:0) y la variable m ha sido correctamente definida y asignada un valor,

entonces se llama a la macro: IsDIV(m, 5)amp; amp; IsDIV(m, 7) Lo que se expresa cuando es verdadero es

A) Determina si m se puede dividir entre 5 o 7

B) Determina si m se puede dividir entre 5 y 7

C) Determinar si m se divide uniformemente entre 5 o 7 con resto 1

D) Determinar si m se divide uniformemente entre 5 y 7 con resto 1

39.

(39) Existe el siguiente programa

#include lt; stdio.hgt

main( )

{ int a=5, b=1, t;

t=(alt; lt; 2)|b; printf("d\n", t);

}

Salida después de ejecutar el programa El resultado es

A)21

B)11

C)6

D)1

40 .

(40) tiene el siguiente programa

#include stdio.hgt; ;

main()

{ ARCHIVO *f ;

f=fopen("filea.txt", "w"); p> fprintf(f, "abc");

fclose(f);

}

Si el contenido original del archivo de texto filea.txt es : hola, luego de ejecutar el programa anterior, el contenido del archivo filea.txt será

A )helloabc

B)abclo

C)abc

D)abchello

Marzo 2009 Respuestas de programación en lenguaje C nivel 2

Preguntas de opción múltiple:

1-10: DACDC ABABC

11-20: CBDDA CDBCB

21-30: CDABA BACBC

31-40: ADBCC CBDAC

Rellena los espacios en blanco:

(1) 19

(2) Caja blanca

(3) Estructura secuencial

(4) Sistema de gestión de base de datos (DBMS )

(5) Diamante

(6) 4

(7) "x/y=d"

(8) Energía

(9) s=0

(10) 1AbCeDf2dF

(11)7777654321

(12) max(int ​​​​a, int b)

(13) NULL

(14) 1001, ChangRong, 1098.0

(15) p=p—gt siguiente