fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int myStrlen(char s[]){
  5. int i;
  6. for(i=0;s[i]!='\0';i++);
  7. return i;
  8. }
  9. char *setPalindrome(char s[]){
  10. int len=myStrlen(s);
  11. int i,j;
  12. char*tmp=(char*)malloc((2*len+1)*sizeof(char));
  13. if(tmp==NULL){
  14. return NULL;
  15. }
  16. for(i=0;i<len;i++){
  17. tmp[i]=s[i];
  18. }
  19. for(i=0,j=len;i<len;i++,j++){
  20. tmp[j]=s[len-i-1];
  21. }
  22. tmp[2*len]='\0';
  23. return tmp;
  24. }
  25. int main(){
  26. char nyuryoku[1024];
  27. char *kaibun;
  28. scanf("%s",nyuryoku);
  29. kaibun=setPalindrome(nyuryoku);
  30. if(kaibun==NULL){
  31. printf("メモリの確保に失敗しました。\n");
  32. return 1;
  33. }
  34. printf("%s\n->%s\n",nyuryoku,kaibun);
  35. free(kaibun);
  36. return 0;
  37. }
Success #stdin #stdout 0s 5288KB
stdin
abab
stdout
abab
->ababbaba