¡Buscando preguntas de exámenes escritos y preguntas de programación en lenguaje C! ! ~ ~ ~¡Gracias~ ~! !

Una respuesta a un examen anterior~ ~//Las preguntas de programación que siguen son experimentos realizados antes~ ~

Examen "Conceptos básicos de programación-C"

1.

654380. Los programas en lenguaje C se pueden comentar y la parte del comentario debe estar encerrada entre los símbolos _ _ _ _.

a, '{y}' b, '[y]' c, '/* ' y ' */' d, ' */' y '/* '

2. Entre los siguientes operadores, el que tiene menor precedencia es _ _ _ _.

A, B, = C, D, =

3 Si las variables están definidas correctamente, el valor de la expresión (j=3, j) es _ _ _ _. _.

a, 3 B, 4 C, 5 D, 0

4. El código ASCII del carácter conocido 'a' es 97 y el resultado de la siguiente declaración es _. _ _ _ .

printf ("d, c ", ' b ', ' b ' 1);

a, 98, b B, declaración ilegal c, 98, 99 D, 98, c

5. El valor de la expresión strcmp ("box", "jefe") es un _ _ _ _ _.

a, número positivo b, número negativo c, 0 D, número indefinido

6. La matriz se define como int a[3][2]={1, 2, 3, 4, 5,6}, el valor del elemento de la matriz _ _ _ _ es 6.

a, a[3][2] B, a[2][1] C, a[1][2] D, a[2][3]

7. Al llamar a funciones matemáticas, _ _ _ _ _ _ _ debe incluirse en la línea de comando #include.

a, " stdio.h" B, " string.h" C, " math.h" D, " ctype.h "

8. y J Una expresión con un valor distinto de cero es _ _ _ _ _.

¡Yo! = 0 amperios amperios! =0 B, i*j! = 0°C ,!(i==0 || j==0) D, i amp ampj

9. Si A es una variable entera básica y C es una variable real de precisión simple, entonces enter La afirmación _ _ _ _ _ es incorrecta.

a. scanf("d, f ", amplificador uno, ampc);

c. scanf("df ", amp one, ampc); d, scanf("df ", a, c

10). (*p) es equivalente a At_ _ _ _ _.

a, p B, x C, *(p) D, ampx

11 Si p1 y p2 son punteros enteros, entonces p1 ya apunta a la variable X, sea. p2 También apuntar a X _ _ _ _ es correcto.

a, p2 = p 1; b, p2 = * * p 1; p2 = ampp 1; d, p2 = * p 1; segmento sí_ _ _ _ _.

int c[]={1, 3, 5};

int * k = c 1

printf("d ", * k) ;

a, 3 B, 5 C, 4 D, 6

13 La asignación o valor inicial incorrecto es _ _ _ _ _.

a. char str[]= " cadena ";

b. char str[7]={'s ', 't', 'r', 'I', ' n ', ' g ' };

c, char str[10]; str = " cadena

d, char str[7]={'s ', ' t ', ' r ', ' I ', ' n ', ' \ 0 ' };

14. Para la siguiente definición de estructura, p-> en str se agrega a _ _ _

.

14. p>

Estructura {

int len

char * str

} * p;

a en el puntero str, B, C en el puntero P, D o superior señalado por str

15 Para la siguiente explicación, la asignación sintáctica y semánticamente correcta es _ _ _ _

int c, *s, a[]={1, 3, 5};

a, c = * b, s[0]= a[0]; [1]; d, c = a;

Segundo, complete los espacios en blanco

1. Escriba el resultado de salida del siguiente segmento del programa

Punto flotante x1, x2;

x 1 = 3/2;

x2 = x 1/2

printf("d,.1f ", (int )x1 , x2);

2. Expresión (7

3. Escribe el resultado de salida del siguiente segmento del programa.

#Definir un 10

#Definición B(Al lt; A 2)-2

printf("d ", B * 2);

4. La variable de carácter C es la letra inglesa.

5. Escribe el resultado de salida del siguiente segmento de programa

int k, x

for (k=0). , x =. 0;k lt= 9 amperios ampx! =10;k )

x = 2;

printf ("d,d ",k,x);

6. Escriba los resultados de salida de los siguientes segmentos del programa

printf("d, d ", NULL, EOF ​​

7. siguiente función recursiva f, llámela. El valor de retorno de f (3) es _ _ _ _ _

f(integer n)

{ return((n gt; 0). ) ?2 * f(n-1) ) f(n-2):-1);}

8. Escribe el resultado de salida del siguiente segmento de programa

char. str[]= " hola \ t mundo \ n. ";

printf("d, c\n ", sizeof(str), *(str 10));

9. Después de ingresar 12345#, escriba el siguiente programa Resultados de salida.

void main()

{ char c;

for(c = getchar(); getchar()!='#'; c=getchar( ))

putchar(c);

}

10. Al ejecutar el programa find–nxouldtext.txt, el valor de * argv[1] es _ _ _ _ _ _.

Tres preguntas de lectura del programa

1. Si la entrada es 3 1 23, la salida del siguiente programa es _ _ _ _ _ _.

#Contiene "stdio.h"

void main()

{ int i, j, n, a[10]; p>scanf("d ", ampn);

for(I = 0;iltn;i)

scanf("d ", ampa[I]);

p>

for(I = 0;i ltn;i)

for(j = 0;j ltn;j)

printf("d ",a[ ( I j) n]);

}

2. Si la entrada es 89 76 24 25 9 8 11 1635 4, la salida del siguiente programa es _ _ _ _ _ _.

#Contiene "stdio.h"

#Definición número 10

Principal()

{

int x[N], y1[N], y2[N];

int i, j, n1, n2, t, p;

n 1 = N2 = 0;

for(I = 0;iltn;i){

scanf("d", ampx[I]);

if(x[I ] 2 = = 0)y 1[n 1 ]= x[I];

si no y2[n2 ]= x[I];

}

for(I = 1;i ltn 1;i)

for(j = 0;j ltn 1-1;j)

if(y 1[j] gt; y1 [j 1]){

t = y 1[j]; y 1[j]= y 1[j 1]; }

for(I = 0;i ltN2-1;i){

p = I;

for(j = I 1;j ltN2 ; j )

if(y2[p] lt; y2[j])p = j;

if (p!=i){

t = y2[I]; y2[I]= y2[p]; y2[p]= t;

}

}

para(I = 0 ;iltn 1;i) printf("d,",y 1[I]);

for(I = 0;iltN2;i) printf("d",y2[I] );

}

3. La salida del siguiente programa es _ _ _ _ _ _.

# include ltstdio.h gt

int z

void p(int *x, int y)

{ * x ;

y-;

z = * x y z;

printf("d,d,d# ",*x,y,z);

p>

}

void main()

{ int x=1, y=5, z = 9

; p( amp; x , y);

printf("d,d,d# ",x,y,z);

}

4. Si -6 15 * 3/5 =, la salida del siguiente programa es _ _ _ _ _ _.

# incluir ltstdio.h gt

void main()

{

int m=0, suma = 0;

p>

char c, oldc = ' ';

hacer {

c = getchar();

if(c lt; = ' 9 ' amp ampc gt= ' 0 ')m = 10 * m c-' 0 ';

En caso contrario{

if(oldc = = ' ')sum = m;

p>

else suma-= m;

m = 0;

oldc = c; printf("d ",suma);

}

} while(c!='=');

}

Cuarto, el programa llena los espacios en blanco

La función del siguiente programa es crear una lista enlazada unidireccional.

# include ltstdio.h gt

# include ltalloc.h gt

Enlace de estructura {

Nombre del personaje[10];

etiqueta int;

estructura enlace * siguiente

};

inserción vacía (char *, int);

struct link * head = NULL

main()

{

Nombre del personaje[10];

etiqueta int;

estructura enlace * t;

mientras ( 1 ) {

scanf("s d ", nombre y marca

if ( strcmp(nombre, " # " = = 0)break;

______(1)_______;

}

for(t =cabeza;______(2 )_______)

printf(" lt; s gt: d\n ", t- gt; nombre, t- gt; marca

}

void insert(char * nombre, int marca)

{

struct link * p;

p = _ _ _ _ _ _(3)_ _ _ _ _ _ _ _;

strcpy(p- gt; nombre, nombre);

p->;mark=marca;

______( 4)_______;

si (cabeza! = NULL)_ _ _ _ _ _ _(5)_ _ _ _ _ _ _ _;

cabeza = p; p>

}

Respuestas

Respuestas de referencia a "Fundamentos de programación en C" para el año escolar 2000~2001

1. preguntas de elección

C D A D A B C B D B A B C A C

Segundo, completa los espacios en blanco

1 1, 0,5

2 1

3 -3

4c gt;= ' a ' amp ampc lt= ' z ' | c gt= ' A ' amp ampc lt='Z '

5 5, 10

6 0, -1

7 -17

8 13, d

9 13

10 'n '

Tres preguntas de lectura del programa

1 1, 2, 3, 2, 3, 1, 3, 1, 2,

2 4 , 8, 16, 24, 76 , 89, 35, 25, 11, 9,

3 2, 4, 6#2, 5, 9#

4 0, - 6, 9, 6, 1,

Cuarto, el programa llena los espacios en blanco

(1) Insertar (nombre, etiqueta)

(2) t! = NULLt = t- gt; entonces

(3)(struct link *)malloc(sizeof(struct link))

(4) p->next = NULL

(5) p->Next=Head

Programa

Rellene los espacios en blanco del programa sin cambiar las oraciones relacionadas con la entrada y la salida.

Ingresa un número entero positivo y repite (0

Dadas las coordenadas (x1, y1) y (x2, y2) de dos puntos cualesquiera en el plano, encuentra la distancia entre los dos puntos (Mantenga 2 decimales).

Es necesario definir y llamar a la función dist(x1, y1, x2, y2) para calcular la distancia entre dos puntos. Los tipos de parámetros de función x1, y1,. x2, y2 son todos. es doble y el tipo de función también es doble

Ejemplos de entrada y salida:

Entradas

1 (repetir=1). )

10 10(x 1 = 10, y1=10)

200 100 (x2=200, y2=100)

Salida

Distancia = 210.24

# incluir ltstdio.h gt

# incluir ltmath.h gt

doble dist(doble x1, doble y1, doble x2 , doble y2) ;

int main(void)

{

int repetición, ri;

Doble distancia, x1, y1 , x2, y2;

scanf("d ", repetir amplificador

for(ri = 1; ri lt=repetir; ri){

scanf(" lflflflf ", ampx1.y1.x2, ampy2);

/* - */

printf("Distancia = .2f\n ", distancia);

}

}

/* - */

Rellena los espacios en blanco según el procedimiento

Buscar todo los números del 1 al 100 que se pueden reemplazar por 6. La suma de números enteros divisibles por

# incluye ltstdio.h gt

int main(void)

{

int i, suma = 0;

/* - */

printf("d ",suma);

}

Rellene los espacios en blanco en el programa, no cambie las oraciones relacionadas con la entrada y la salida.

Ingrese un número entero positivo y repita (0

. Leer un número real x y un entero positivo n (n

Ejemplo de entrada y salida:

Entradas

2(repeat=2)

1,5 ^ 2(x = 1,5, n=2)

2 ^ 7 (x = 2, n=7)

Salida

2,25.

128.00

# incluir ltstdio.h gt

int main(void)

{

int i , n;

int repetir, ri;

doble mypow, x

scanf("d", amp repetir

for(ri = 1; ri lt=repeat; ri){

scanf("lfd ", ampx amp;n);

/* - */

printf(".2f\n ", mypow);

}

}

.....Hay muchas preguntas sobre programación~ ~ Puedo enviártelos si es necesario~