Buscamos urgentemente un banco de preguntas y respuestas para la revisión del lenguaje C
1. La unidad básica del programa fuente en lenguaje C es (B).
A procedimiento B función C subrutina D identificador
2. La salida del siguiente programa es (C).
principal( )
{ int a=7, b=5
printf("d\n", b=b/a);
}
A 5 B 1 C 0 D Valor incierto
3. Supongamos que las variables a y b son números enteros, la expresión (a=5, b). =2, agt; b?a b , el valor de a b) es (B).
A 7 B 8 C 9 D 2
4. Supongamos que a es una variable int. Después de ejecutar la siguiente instrucción de asignación, el valor de a es (B).
a=125.534; a=(int)125.5214; a=5lt;lt;2;
A 125, 31, 1 B 125, 1, 20 C 125, 31, 20 D 125.534, 2, 20
5. El siguiente es un segmento del programa. La siguiente descripción es correcta (C).
int k=10; while(k=0) k=k-1;
Un bucle se ejecuta una vez que el bucle B es infinito La declaración del cuerpo del bucle C no se ejecuta una vez que el bucle D cuerpo La declaración se ejecuta una vez
6. La salida del siguiente programa es (A).
int i;
void prt()
{ for(i=5;ilt;8;i) printf("c",'*'
printf("\t");
}
principal()
{ para(i=5; i). lt;=8;i) prt();
}
A *** B *** *** *** *** *** C *** *** *** D * * *
7. En el programa C, la siguiente afirmación es correcta (B).
La definición de una función se puede anidar, pero las llamadas a funciones no se pueden anidar
La definición de función B no se puede anidar, pero las llamadas a funciones se pueden anidar
Definición de función C Ni las definiciones de funciones ni las llamadas a funciones se pueden anidar
D Tanto las definiciones de funciones como las llamadas a funciones se pueden anidar
8. La siguiente declaración de llamada a función contiene (A) parámetros de números reales.
func((e1, e2), (e3, e4, e5));
A 2 B 3 C 5 D Error de sintaxis
9. siguiente La salida del programa es (A).
#define AGREGAR(x) x*x
main( )
{ int a=4, b=6, c=7, d=AGREGAR (a b)*c;
printf("d=d",d
}
A d=70 B d=80 C d=); 140 D d= 700
10. La descripción del registro de trabajador conocido es la siguiente. En Turbo C, el sistema asigna (C) bytes de espacio a la variable w.
estructura trabajador
{ int no;
char nombre[20]
char sexo;
unión
{ int día; int mes; int año }nacimiento
} w; >
11. Según la siguiente definición, la constante de enumeración con valor 5 es (A).
enumeración semana{dom, lun=4, mar, mié, jue, viernes, sáb} w;
A mar B sáb C vie D jue
12. Entre las siguientes opciones, la declaración de asignación correcta es (set char a[5], *p = a;) (A).
A p="abcd"; B a="abcd"; C *p="abcd"; D *a="abcd"
13. segmento, la expresión con valor 6 es (B).
estructura st { int n; estructura st *next;};
estructura estática st a[3]={5,amp;a[1],7,amp;a [2], 9, 0}, *p;
p=amp; a[0];
A p -gt; gt;n D (*p).n
El tipo de archivo en 14.C es solo (D).
A Dos tipos: archivo de índice y archivo de texto B Un tipo de archivo de texto
C Un tipo de archivo binario D Dos tipos de archivo de código ASCII y archivo binario
2. Para juzgar si está bien o mal, marque "√" si está bien y "×" si está mal (5 puntos, 0,5 puntos por cada pregunta)
1. En Turbo C, los datos enteros ocupan 2 bytes en la memoria. (× )
2. int i=20; switch(i/10){caso 2: printf("A"); printf("B");} El resultado de salida es A. . (×)
3. Utilice la instrucción break en el cuerpo del bucle para finalizar el bucle en este nivel y utilice la instrucción continue en el cuerpo del bucle para finalizar el bucle en este nivel. (√)
4. La llamada recursiva de una función no es más que la función que se llama a sí misma directa o indirectamente. (√)
5. El valor de la función strlen("ASDFG\n") es 7. (×)
6. A través de la declaración de retorno, una función puede devolver uno o más valores de retorno. (×)
7. Sólo existe un tipo de estructura. (×)
8. char *p="girl"; significa definir la variable de puntero de carácter p, cuyo valor es la cadena "girl". (× )
9. Si hay una definición: char *p(char a[10]); (√ )
10. Utilice fopen("file", "r ") para modificar el archivo abierto "file".
(√)
Respuestas
1. Preguntas de opción múltiple (7 puntos en total, 0,5 puntos cada una)
1.B 2.C 3.B 4 .B 5.C
6.A 7.B 8.A 9.A 10.C
11.A 12.A 13.B 14.D
2. Para juzgar si es verdadero o falso, marque "√" si es correcto y "×" si es incorrecto (5 puntos, 0,5 puntos por cada pregunta)
1.× 2.× 3.√ 4.√ 5. ×
6.× 7.× 8.× 9.√ 10.√
1 Pregunta de opción múltiple (24 puntos)
II.
1. La forma de llamada conocida de la función fread es fread(buffer, size, count, fp), donde buffer representa (B).
A El área de almacenamiento para leer el elemento de datos B La dirección para leer los datos o el puntero que apunta a la dirección
C El puntero del archivo que se está leyendo D representa los datos elemento a leer El número total de variables enteras
2. La salida del siguiente programa será (C).10, 10
main()
printf("d, d\n", i, j--}
A 11, 9 B 9, 10 C 8, 10 D 9, 9
3. Supongamos que a es una variable de tipo int. Después de ejecutar la siguiente instrucción de asignación, el valor de a es (B). a=125.534; a=20.0/3.5214; a=5lt;lt;2;
A 125, 6, 31, 1 B 125, 6, 1, 20 C 125, 6.666666, 31, 20 D 125.534, 6.666666, 2, 20
4. Dado que i y k son ambos tipos int, la instrucción de bucle for (D).
for(i=0,k=-1;k=1;i,k) printf("****\n");
Una condición para el final del bucle Ilegal B El cuerpo principal del bucle no se ejecuta una vez C El cuerpo principal del bucle solo se ejecuta una vez D Este es un bucle infinito
5. La salida del siguiente programa será (`D) .
principal()
{ char c;
int i;
for(i=65; ilt; 68; i)
{ c=i 32;
cambiar(c)
{ caso 'a': caso 'b': caso 'c'. c, ", c); pausa; predeterminado: printf ("fin"); }
}
}
}
A a, b, c, end B a, a, a, end C a, a, a, a, a, D a, b, c,
6. , - 10L, 2); significa (A).
A Mueve el puntero de posición del archivo 10 bytes desde el final del archivo hacia el principio del archivo
B Mueve el puntero de posición del archivo 10 bytes desde la posición actual hacia el comienzo del el archivo
p>
C Mover el puntero de posición del archivo 10 bytes desde la posición actual hasta el final del archivo
D Mover el puntero de posición del archivo 10 bytes desde el principio del archivo
7
7. La salida del siguiente programa es (D).
principal( )
{ char s1[40]="país", s2[20]="lado"
int i=0, j =0;
mientras(s1[i]! = '\0') i
mientras(s2[j]!= '\0') s1[i ]= s2[j];
s1[i]=0;
printf("s\n",
}
<); p>Lado A B país C lado D campo8. ¿Cuál de las siguientes afirmaciones es incorrecta (A)?
A Las variables definidas en la función principal main son válidas en todo el archivo o programa
B Las variables con el mismo nombre se pueden usar en diferentes funciones
C Los parámetros formales son variables locales
D En una función, las variables se pueden definir en declaraciones compuestas, y estas variables solo son válidas en declaraciones compuestas
9. variable de enumeración. En el segmento del programa, el valor de la variable de enumeración c1 es (D).
color de enumeración { rojo, amarillo, azul=4, verde, blanco}c1; c1=amarillo; c1=blanco
A 1 B 3 C 5 D 6
10. Existe una declaración de este tipo int (*ptr)(); donde el identificador ptr es (B).
A es un puntero a una variable de deformación. B es un puntero a una función. El valor de la función es int.
C es un nombre de función. definición
p>
11. Utilice el método correcto (C) para definir una matriz p que consta de n punteros que apuntan a datos enteros.
A int p; B int (*p)[n]; C int *p[n]; D int (*p)( ); p es del mismo tipo que la matriz a y no se puede operar en (B).
A p=a; B *p=a[0]; C p=amp; a[0]; D p=amp; incorrecto, marque "√" si la respuesta es correcta, marque "×" si la respuesta es incorrecta (20 puntos, 2 puntos por cada pregunta)
1. Los datos que participan en las operaciones de bits pueden ser cualquier tipo de datos. (× )
2. Si hay definiciones y declaraciones: int a; char c; float f; ; si se ingresa a través del teclado: 10, A, 12.5, entonces a = 10, c = 'A', f=12.5.(√) 12.500000
3. ) secuencia. (√ )
4. Si hay una definición de macro: #define S(a, b) t=a; a=b=t Debido a que la variable t no está definida, esta definición de macro es; equivocado . (× )
5. En Turbo C, las siguientes definiciones y declaraciones son legales: file *fp; fp=fopen("a.txt", "r");
6. Si existe tal definición: char s[ ]="china"; entonces el sistema Turbo C abrirá una unidad de almacenamiento de 6 bytes para los arrays. (√ )
7. Si hay una definición: char s[ ]="China"; entonces el sistema Turbo C abrirá una unidad de almacenamiento de 6 bytes para los arrays.
(√ )
7. Si hay definiciones y declaraciones: int a[3][3]={{3, 5}, {8, 9}, {12, 35}}, i, sum =0; for(i=0;ilt;3;i) sum =a[i][2-i]; entonces sum=21.(√ )
8. declaraciones: struct Student { int num; char nombre[10]; puntuación flotante;} s[5]={{1, "lili", 98.5}, {9, "xiaohua", 66}}, *p=s; printf( "d", *p ); la salida es 1.(× )
9. Si se define un tipo de estructura en el programa, el tipo de estructura se puede utilizar varias veces para definir variables. (√ )
10. Esta definición y declaración son legales en Turbo C: enum aa{ a=5, b, c}bb=(enum aa)5;
Respuestas
Respuestas
I Preguntas de opción múltiple (24 puntos, 2 puntos cada una)
1. ( B ) 2. ( C ) 3. ( B ) 4. ( D ) 5. ( D ) 6. ( A )
7. ( D ) 8. ( A ) 9. ( D ) 10. ( A ) 9. ( D ) 10. ( B ) 11. ( C ) 12. ( D )
2. Juzgue si está bien o mal, marque "√" si está bien y "×" si está mal (20 puntos, cada hora Pregunta 2 puntos)
1. ( √ ) 2. ( √ ) 3. ( √ ) 4. ( √ ) 5. ( √ )
6. ( √ ) 7.