Clasificación de cadenas

#¿Incluir? & ltiostream & gt

#Contiene? & ltfstream & gt

¿Usar? ¿Espacio de nombres? std

¿Nulo? main()

{

ifstreaminfile("D:\\input.txt"?,?ios::in?);

ofstream? outfile("D:\\output.txt",?IOs::out);

Si? (archivo)

{

int? ¿No? =?0;

¿archivo? >>? Ninguno;

Carc. * p【100】;

¿Para qué? (int?i?=?0;?i?<?none;?i++)

{

p[I]? =?¿Nuevo? char

archivo? >>? p【I】;

}

¿Para qué? (int?I?=?0;?I?<?No;?i++)

{

¿Para qué? (int?j?=?i?+?1;?j?<?none;?j++)

{

¿Si? (strlen(p[j])?<?strlen(p[I]))

{

//Si la longitud de este último es menor que la del primero, cámbialo .

Carácter. *p1? =?p【Yo】;

p【Yo】? =?p【j】;

p【j】? =?p 1;

}

¿Y si? ¿si? (strlen(p[j])?==?strlen(p[I]))

{

//Cuando la longitud de este último es igual a la primera, compare este último.

¿Y si? (strcmp(p[I],?p[j])?>?0)

{

Car. *p2? =?p【Yo】;

p【Yo】? =?p【j】;

p【j】? =?p2;

}

}

}

archivo de salida? <<? pi】? <<? "\t";

}

¿archivo de salida? <<? endl

¿Para qué? (int?I?=?0;?I?<?No;?i++)

{

¿Para qué? (int?j?=?i?+?1;?j?<?none;?j++)

{

¿Si? (strcmp(p[I],?p[j])?>?0)

{

Car. *p3? =?p【Yo】;

p【Yo】? =?p【j】;

p【j】? =?P3;

}

}

¿archivo de salida? <<? pi】? <<? "\t";

}

¿archivo de salida? <<? endl

}?

¿Otro

{

archivo de salida? <<? "¡¡¡El archivo de prueba Input.txt no existe!!!"? <<? endl

}

infile.close()? ;

outfile . close();

}

Ejecutar resultados: