fork download
  1. #include <iostream>
  2. #include <cstring>
  3. #include <algorithm>
  4. using namespace std;
  5.  
  6. void reverse(char *p,char *k)
  7. {
  8. swap(*(p++),*(--k));
  9. if(p<k) reverse(p,k);
  10. }
  11.  
  12. void wreverse(char *p,char *k)
  13. {
  14. if(*p==' ') wreverse(p+1,p+1);
  15. else if((*k)&&(*k!=' ')) wreverse(p,k+1);
  16. else
  17. {
  18. if(p<k) reverse(p,k);
  19. if(*k) wreverse(k,k);
  20. }
  21. }
  22.  
  23. int main()
  24. {
  25. const char tb[]="Ala ma czarnego kota";
  26. char str[sizeof(tb)];
  27. memcpy(str,tb,sizeof(tb));
  28. reverse(str,str+strlen(str));
  29. wreverse(str,str);
  30. cout<<str<<endl;
  31. return 0;
  32. }
Success #stdin #stdout 0.02s 2680KB
stdin
Standard input is empty
stdout
kota czarnego ma Ala