Si la cadena no está llena; ~~ los valores posteriores son aleatorios ~~ El uso de la función strcmp no es muy estable ~~ Se recomienda hacer una función de comparación usted mismo;
Además, creo que su método de intercambio Los valores son un poco laboriosos ~~ ¿Por qué no manipular directamente el puntero y modificarlo indirectamente?
strcmp (inglés, árabe)
for(int I = 0; Iltb; i )
e[2 * I]= a[I];
for(int I = 0; j ltb; j )
e[2 * I-1]= a[b I];
Y no noté tu intercambio. La persona en realidad está equivocada ~ La intención original de la pregunta no es intercambiar a[j] y a[b -1], ¿verdad?
Escríbelo como quieras~ Debería quedar así.
for(j = 0; j lt2b; j )
a[j]= a[j] a[2 * j (2 * b 1)];
a[2 * j (2 * b 1)]= a[j]-a[2 * j (2 * b 1)];
a[j]= a[j ]-a[2 * j (2 * b 1)];