Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

C-Kurs/PalindromeMusterlösung: Unterschied zwischen den Versionen

(Die Seite wurde neu angelegt: „<pre> #include <stdio.h> char* reverse(char wort[]) { char* result = calloc(strlen(wort) + 1, sizeof(char)); int i; for(i = 1; i <= strlen(wort); i++) *(res...“)
 
 
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 19: Zeile 19:
 
if (argc < 2) return -1;
 
if (argc < 2) return -1;
 
printf("%s\n%s\n", argv[1], reverse(argv[1]));
 
printf("%s\n%s\n", argv[1], reverse(argv[1]));
pr
+
printf("%d\n", isReverse(argv[1], argv[1]));
 +
}
 
</pre>
 
</pre>

Aktuelle Version vom 5. März 2013, 17:37 Uhr

#include <stdio.h>

char* reverse(char wort[]) {
	char* result = calloc(strlen(wort) + 1, sizeof(char));
	int i;
	for(i = 1; i <= strlen(wort); i++)
		*(result++) = wort[strlen(wort) - i];
	*result = '\0';
	return result - strlen(wort);
}

int isReverse(char* wort1, char* wort2) {
	char* wort1Rev = reverse(wort1);
	return strcmp(wort1Rev, wort2);
}

int main(int argc, char* argv[]) {
	if (argc < 2) return -1;
	printf("%s\n%s\n", argv[1], reverse(argv[1]));
	printf("%d\n", isReverse(argv[1], argv[1]));
}