fork download
  1. #include <iostream>
  2. #include <string.h>
  3. #define MAX 100
  4. using namespace std;
  5.  
  6. int myStrlen(char s[], int k){
  7. k = 0;
  8. while (s[k] != '\0')
  9. k++;
  10. return k; //s[k] là \0
  11. }
  12. void ChuanHoa(char s[]){
  13. int len;
  14.  
  15. while (s[0]==' '){
  16. len = myStrlen(s, len);
  17. for (int i=0; i<len; i++)
  18. s[i]=s[i+1];
  19. }
  20.  
  21. len = myStrlen(s, len);
  22. while (s[len - 1] == ' '){
  23. s[len - 1] = '\0';
  24. len--;
  25. }
  26.  
  27. int vitri = 0;
  28. bool thaotac;
  29.  
  30. while (s[vitri] != '\0'){
  31. thaotac = false;
  32. if (s[vitri] == ' '){
  33.  
  34.  
  35. if ((s[vitri + 1] == ' ') || (s[vitri + 1] == '.')){
  36.  
  37.  
  38. len = myStrlen(s, len);
  39. for (int i=vitri; i<len; i++)
  40. s[i]=s[i+1];
  41. thaotac = true;
  42. }
  43. }
  44. else if (s[vitri] == '.'){
  45. if (s[vitri + 1] != ' '){
  46. len = myStrlen(s, len);
  47. for (int i=len; i>vitri; i--)
  48. s[i+1] = s[i];
  49.  
  50. s[vitri+1] = ' ';
  51.  
  52. thaotac = true;
  53. }
  54. }
  55.  
  56. if (thaotac == false)
  57. vitri++;
  58. }
  59. }
  60.  
  61. int main() {
  62. char s[MAX];
  63. cin.getline(s, MAX);
  64. ChuanHoa(s);
  65. cout<<s;
  66. return 0;
  67. }
Success #stdin #stdout 0.01s 5252KB
stdin
    Nguyen     VAN     AN         
stdout
Nguyen VAN AN