Pregunta de programación en lenguaje C, ingrese 5 cadenas y luego ordénelas
#define LINEMAX 20/*Definir la longitud máxima de la cadena*/
int main()
{int i;
char**p, *pstr[5], str[5][LINEMAX];
for(i=0;iamp;lt;5;i)
pstramp; lt ;iamp;gt;=stramp;lt;iamp;gt;;/*Asigne la primera dirección de la cadena i-ésima al elemento i-ésimo de la matriz de punteros pstr*/
printf( "entrada 5 cadenas :\n");
for(i=0;iamp;lt;5;i)
scanf("s",pstramp;lt;iamp; gt;);
p=pstr;
sort(p);
printf("cadenas ordenadas:\n"); p>for( i=0;iamp;lt;5;i)
printf("s\n",pstramp;lt;iamp;gt;);
}
sort(char**p)/*Función de clasificación de burbujas para 5 cadenas*/
{int i, j;
char*temp;
for(i=0;iamp;lt;5;i)
{for(j=i 1;jamp;lt;5;j)
{si (strcmp(*(p i), *(p j))amp; gt; 0)/*Dirección de cadena de intercambio después de la comparación*/
{temp=*(p i);
*(p i)=*(p j);
*(p j)=temp;
}
}
}< / p>
return 0;
}
Información ampliada:
El formato de llamada de la función printf() es: printf("amp;lt ; Formato de cadena>",<tabla de parámetros>).
La cadena de formato incluye dos partes: una parte son caracteres normales, que se generarán tal como están, la otra parte formatea caracteres específicos, comenzando con "", seguido de uno o varios caracteres especificados, usados; para determinar el formato del contenido de salida.
La tabla de parámetros es una serie de parámetros que deben generarse. El número debe ser tanto como el número de parámetros de salida descritos en la cadena de formato. Cada parámetro está separado por "," y el orden. es lo mismo, de lo contrario se producirán errores inesperados.
Por ejemplo:
int a=1234
printf("a=d\n",
Salida; El resultado es a=1234.
scanf() es una función de entrada en lenguaje C. Al igual que la función printf, se declaran en el archivo de encabezado stdio.h, por lo que se debe agregar #includeamp;lt;stdio.hamp;gt cuando se utiliza la función scanf.
int scanf(const char*restrict format,...);
La función scanf() lee el contenido del flujo de entrada estándar stdin (dispositivo de entrada estándar, que generalmente apunta al teclado) Una subrutina general que puede leer múltiples caracteres en un formato específico y guardarlos en variables en las direcciones correspondientes.
Por ejemplo:
scanf("dd", amp; a, amp; b);
El valor de retorno de la función es de tipo int. y b se lee correctamente, entonces el valor de retorno de scanf es 2.