Write a C program to calculate the average word length of a sentence using while loop

CServer Side ProgrammingProgramming

Problem

Enter a sentence at run time and write a code for calculating the average length of words that are present in a sentence

Solution

Algorithm

START
Step 1: declare character, int and double variables
Step 2: Enter any statement
Step 3: while loop
       Check condition stmt[i]=getchar()) != '\n'
       True then enter into loop
       Increment I and call the function at step 5
Step 4: Print the average length return by function
       From step 5
Step 5: called function calculatewordlength
         i. declare and initialize
            charcount=0 and wordcount=1
         ii. while loop
            check condition (*stmt != '\n')
            if it trues enter into loop
            1.    if(*stmt != ' ')
            2.    charcount++;
            3.    else if(*stmt == ' ')
            4.    wordcount++;
            5.    stmt++;
         iii. return (double)charcount/wordcount;
STOP

Program

#include<stdio.h>
#include<string.h>
double calculatewordlength(const char *stmt);
int main(){
   char stmt[100];
   int i=0;
   double avglen;
   printf("enter any statement:");
   while((stmt[i]=getchar()) != '\n')
      i++;
   stmt[i]='\n';
   avglen=calculatewordlength(stmt);
   printf("average length of word is:%f.\n ", avglen);
}
double calculatewordlength(const char *stmt){
   int charcount=0;
   int wordcount=1;
   while(*stmt != '\n'){
      if(*stmt != ' ')
         charcount++;
      else if(*stmt == ' ')
         wordcount++;
      stmt++;
   }
   return (double)charcount/wordcount;
}

Output

enter any statement:Tutorials Point is the best resource for online education average length of word: 5.444444444.
raja
Published on 05-Mar-2021 12:11:11
Advertisements