Red de conocimiento informático - Conocimiento informático - Ayuda a escribir un programa. La pregunta es: use el método de puntero a puntero para ordenar y generar 5 cadenas.

Ayuda a escribir un programa. La pregunta es: use el método de puntero a puntero para ordenar y generar 5 cadenas.

#define _CRT_SECURE_NO_WARNINGS 1

#includelt;stdio.hgt;

#includelt;stdlib.hgt;

#includelt;string .hgt;

void sort(char **p)

{

char **q, **s, *t;

para (q = p; q lt; p 4; q )

{

para (s = q 1; s lt; p 5; s )

{

if (strcmp(*q, *s) gt; 0)

{

t = *q;

*q = *s;

*s = t;

}}

}

}

int main()

{

char *a[5], b[5][99], **p;

int i;

for (i = 0; i lt; 5; i)

a[i] = b[i];

printf("Por favor, introduzca secuencia Cinco cadenas:\n");

for (i = 0; i lt; 5; i)

scanf("s", a[i]);< / p>

p = a;

sort(p);

printf("La salida después de ordenar es:\n"); (i = 0; i lt; 5; i)

{

printf("s\n", a[i]);

}

system("pause");

return 0;

}

Efecto operativo:

Información ampliada :

Uso de la función scanf():

El valor de salida son solo los caracteres antes del espacio porque el formato de entrada de la función scanf es incorrecto y es necesario agregar amp; la variable del parámetro de entrada.

scanf("s", s); cambiado a scanf("s", & s

El uso de scanf es: scanf("cadena de control de formato", Entrada). parámetro uno, parámetro de entrada dos);

La cadena de control de formato contiene: instrucciones de control de formato, caracteres comunes.

1. La cadena de control de formato representa el formato de entrada (d se usa para el tipo int, f se usa para el tipo flotante y lf se usa para el tipo doble)

2. caracteres: al generar datos, los caracteres se muestran tal como están, como por ejemplo: fahr=, celsius= en "fahr=d, celsius=d\n".

3. El parámetro de entrada es la dirección de la variable, así que agregue amp delante de la variable.