Guest User

Untitled

a guest
Feb 25th, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <assert.h>
  4. #include <ctype.h>
  5. #include <string.h>
  6.  
  7.  
  8. int main () {
  9.  
  10. /* while isalpha is false, apss through unmodified */
  11. int c;
  12. int counter = 0;
  13. int first_letter;
  14. /* char first_letter */
  15.  
  16.  
  17. while((c = getchar()) != EOF) {
  18. /* Move the first letter to the end. */
  19. if (counter == 0 && isalpha(c)){
  20. first_letter = c;
  21. counter = counter + 1;
  22. }
  23. else
  24.  
  25. if (isupper(first_letter) && counter == 1 && isalpha(c)) {
  26. putchar(toupper(c));
  27. counter = counter + 1;
  28. }
  29.  
  30. else if (isalpha(c) && islower(first_letter) && counter == 1){
  31. putchar(tolower(c));
  32. counter = counter + 1;
  33. }
  34. else if (isalpha(c) && counter >= 1){
  35. putchar(c);
  36. counter = counter + 1;
  37. }
  38. /* need to print out the first letter */
  39. else if (isalpha(c) == 0 && counter == 0){
  40. putchar(c);
  41. counter = 0;
  42. }
  43.  
  44. else if (isalpha(c) == 0 && counter <= 3){
  45. if (counter == 1){
  46. if (islower(first_letter)){
  47. putchar(tolower(first_letter));
  48. } else
  49. putchar(toupper(first_letter));
  50. }
  51. else {
  52. putchar(tolower(first_letter));
  53.  
  54. }
  55. printf("an");
  56. putchar(c);
  57. counter = 0;
  58. }
  59.  
  60. else if (isalpha(c) == 0 && counter >= 3){
  61. putchar(tolower(first_letter));
  62. putchar('o');
  63. putchar(c);
  64. counter = 0;
  65. }
  66.  
  67.  
  68.  
  69. }
  70.  
  71.  
  72. if (counter <= 3){
  73. putchar(first_letter);
  74. printf("an");
  75. }
  76. else if (counter >= 3){
  77. putchar(tolower(first_letter));
  78. putchar('o');
  79. }
  80.  
  81. return 0;
  82.  
  83. }
Add Comment
Please, Sign In to add comment