Salut la Communaute!

Je suis entrain d'ecrire un programme en C qui doit retourner une sorte de palindrome, je m'explique:
-Voici un exemple! lorsque j'entre : ANNASUE
il doit me retourner ANNASUESANNA.
ca veut dire il prend le tableau initial : ptr = ANNASUE
le retourne et colle a la suite le palindrome(SUEANNA) mais sans les "UE"; sinon l'on aura ANNASUEEUSANNA;
ca devrait aussi fonctionner avec tout exemple comme : TENET donne au lieu de "TENETTENET" plutot TENETNET.

Je programme sur Linux et dans ce programme l'on ne doit point utiliser la bibliotheque <string.h> sinon ce serait trop facile(<-- a dit le prof ):

voici le code que j'ai ecrit et que j'essaye resourdre en vain depuis quelques jours:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#define Laenge 100
int strlen(char *string) 
{
	int len=0;
	while (string[len] != '\0')
	len ++;
	return len;
}
 
char *move(char *dest, char *quelle)
{	
	int i=0,j=0,anzahl;
	anzahl = strlen(quelle);
	dest = (char *) malloc(2*anzahl-1);
	for(i,j;i!='\0',j<anzahl;j++,i++)
	{
		dest[j]= quelle[i];
	}
	return dest;
}
 
char *palindrome(char *ptr)
{
	char *ptr2=0;
	int anzahl,i,j=1;
	move(ptr2,ptr);
	anzahl = strlen(ptr);
	int grenze = 2*anzahl;
	for (i = anzahl; i != '\0', j < grenze; i--,j++)
	{
		ptr2[j+anzahl]= ptr[i-3];
	}
	return ptr2;
}
 
int main()
{
	char *my = 0;
	char tab[Laenge];
	printf("Geben sie Ihre String ein : ");
	scanf("%s",&tab);
	my = palindrome(tab);
	printf("Zeichenkette = %s \n", my);	
	free(my);
	return 0;
}
Merci a tous ceux qui voudront y jeter un coup d'oeil.

Bon Weekend!