• This topic is empty.
Viewing 1 post (of 1 total)
  • Author
    Posts
  • #76
    admin
    Keymaster
      
      
      #include <cs50.h>
      #include <stdio.h>
      #include <string.h>
      int main(void)
      {
          string enterword = get_string("input: ");
          int t = strlen(enterword);
          printf("%i\n", t);
          int counter = 0;
          for(int i = 0; i<= t; i++)
          {
             
               if (enterword == '.'|| enterword == '!' || enterword == '?'){
               counter = counter + 1;}
          }
               printf("number of lines %i\n",counter);
               
               int wordcounter = 0;
               for (int i = 0; i<= t; i++)
               {
                   if (enterword == ' ' || enterword == '.'){
                       wordcounter = wordcounter + 1;
                   }
                   
               }
               printf("total words %i\n", wordcounter);
      }

      The above program fails to calculate correctly no. of words. The problem is that char type can take only one character.

      
      
      int wordcounter = 0;
               for (int i = 0; i<= t; i++)
               {
                   if (enterword == ' ' || enterword == '.'){
                       wordcounter = wordcounter + 1;
                   }
                   
               }
               printf("total words %i\n", wordcounter);

      I cannot have enterword == ‘. ‘; that is, one space after. to count correctly number of words when before full stop and a new line starts with a space after that full stop. Seeking help how to approach in such scenario.

       


      Reply


      https://edstem.org/us/courses/176/discussion/976408?comment=2210979[learn_press_profile]

    Viewing 1 post (of 1 total)
    • You must be logged in to reply to this topic.
    Scroll to Top