Δημοσιεύτηκε: 08 Αύγ 2011, 11:55
από migf1
Qdata έγραψε:
migf1 έγραψε:Μα είναι αναγραμματισμός :lol:

ΥΓ. Εν τω μεταξύ είχα κι εγώ λάθος στη 2η λύση με τον πίνακα, το διόρθωσα.


Όπ, μισό λεπτό.Φαίνεται εγώ έλυσα άλλη άσκηση. :D .Όταν έλεγες αναγραμματισμό κατάλαβα κάτι σαν αυτό:
abcd - αναγραμματισμός: dcba
Δηλαδή το a πάει στο τέλος, b προ τελευταίο, c δεύτερο, d πρώτο.
Λάθος μου!Συγνώμη! :oops:
Τώρα κατάλαβα την άσκηση.Πάω να την λύσω σωστά αυτή την φορά. :)

Α, εσύ εννόησες αντιστροφή (reverse) ε;

Σου δίνω μια λύση για reverse σε spoiler, αλλά την υλοποιώ με δείκτες (νιώθω πιο άνετα με αυτούς όταν διαχειρίζομαι strings)...
Spoiler: show
Κώδικας: Επιλογή όλων

char *s_reverse(char *s)
{
if ( !s ) // early exit
return NULL;

char *cp1, *cp2, dummy;

cp2 = s + strlen(s) - 1; // set cp2 at end of s
for (cp1=s; cp1 < cp2; cp1++, cp2--) {
dummy = *cp1;
*cp1 = *cp2;
*cp2 = dummy;
}

return s;
}