¿Qué hay de malo en esta pregunta sobre lenguaje C?

#include "stdio.h"

#include "string.h"

void main()

{

orden nula (char *a,char *b);

char a[10][80];

char c;

int i,j;

printf("Ingrese 10 cadenas:\n");

for(i=0;i<10;i++)

gets(a[i]); //Ingrese una cadena cada vez

for(i=0;i<9;i++)

for(j=i+ 1;j< 10;j++)

order(a[i],a[j]); //Comienza desde la primera cadena y compárala con las siguientes cadenas una por una

printf( "La cadena ordenada es:\n");

for(i=0;i<10;i++)

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

}

orden nula(char *a,char *b)

{

int i ,j,A, B,m,n;

int nLenEqual = 1;

char c;

A=strlen(a);

B =strlen(b);

if(A>B)

{

m=A;

n=B;

}

más

{

m=B;

n=A

}

//m es la longitud de la cadena larga, n es la longitud de la cadena corta

for(j=0;j

{

if(*(a+j)>*(b+j)) //Comparar carácter por carácter

{

for(i=0;i

{

c=*(a+i);

*(a+i )= *(b+i);

*(b+i)=c;

}

nLenEqual = 0;

romper ;

}

// break; //Salir del ciclo después del intercambio

}

for(i=n ;i

{

si(nLenEqual == 0)

{

si(A>B)

{

b[i]=a[i];

a[i]='\0';

}

else

{

a[i]=b[i];

b[i]='\0'

}

}

más

{

si(A>B)

{

b[i]=a[i];

a[i]='\0';

}

}

}

a[m]=b[m]='\0';

}