Wednesday 18 January 2017

Counting the number of words in a given string in C programming(c programming examples)(c program examples)

Counting the number of words in a given string in C programming

This is an example in C programming which covers basic 'if conditions' and 'while loop'. In this program, the conditions are the main logic. A word is a group of letters without any spaces or tabs or newlines between them.


If you want to see this code with a perfect indentation, copy the code into "sublime text editor" and make sure that the type of code is set to 'c' at the bottom right of the window. After pasting the code press the command "ctrl+shift+P", you get a search box. Type "indentation" you get an option like this below the search box "Indentation: Reindent lines". Clink on that to get the code with indentation. 


The program is as follows:

#include <stdio.h>
main()
{
char a[1000];
int i=0,space=0;
printf("enter any string\n");
gets(a);
while(a[i]!='\0')
{
if(a[i]!=' '&& a[i]!='\t' && a[i]!='\n')
{
if(a[i+1]==' '||a[i+1]=='\t'||a[i+1]=='\n')
space++;
}
i++;
}
printf("the total number of words in the given string are %d\n",space+1 );
return 0;
}


The output is as follows:






#include <stdio.h>


The '#include' is a preprocessor directive which includes the source files inside the code. The 'stdio.h' is a standard input and output header file with several functions written in it. The functions like 'printf()''gets()' and 'scanf()' are work when we include 'stdio.h' header file. 



char a[1000];

Here we declare only one array 'a[]' to store the string entered by the user. And the data type used is 'char' which carries the character type data.


int i=0,space=0;

We declared two variables 'i' and 'space'. We assigned both the variables with '0' to remove the garbage values within the variables. The variable 'i' is used to browse all the compartments of the array. And the variable 'space' is used to represent the number of words in the string.


printf("enter any string\n");
gets(a);

The two predefined functions 'printf()' and 'gets()' are included in the 'stdio.h' header file. These lines are executed with the help of 'stdio.h' header file. The function 'printf()' prints the message "enter any string". The function 'gets()' assigns the string into the array 'a[]'.

while(a[i]!='\0')
{
if(a[i]!=' '&& a[i]!='\t' && a[i]!='\n')
{
if(a[i+1]==' '||a[i+1]=='\t'||a[i+1]=='\n')
space++;
}
i++;
}

The main logic in the program is in the loop. The while loop helps to execute the same code for several times which can be handled by the condition which is written in the parenthesis. The condition is " a[i]!='\0' ". The loop is executed up to the end of the string. The body of loop contains two conditions. When the two 'if conditions' are satisfied then only the value of 'space' is incremented by one. The symbol '&&' is called 'and operator' The compiler enters into the body when the three conditions are satisfied. The symbol '||' represents the 'or operator'. The compiler executes the body of second 'if condition' when one of those three conditions are satisfied. For every word, there is a null character or space or a tab after the end letter in it. So the second 'if condition' works perfectly in this program to find the number of words. After checking a character in the string the value of 'i' is incremented to go to next character in the string array 'a[]'.


printf("the total number of words in the given string are %d\n",space+1 );

In this line, the space value is incremented by one because, the end word has a null character succeeding to it, which is not satisfied in the second 'if condition'. So, to count the last word if any we increase the value of space by '1'.



C is a general-purpose programming language. It has been closely associated with the UNIX system where is was developed, since both the system and most of the programs that run on it are written in C. The language, however, is not tied to any one operating system or machine; and although it has been called a “system programming language” because it is useful for writing compilers and operating systems, it has been used equally well to write major programs in many different domains.(c programming examples)(c program examples)
Many of the important ideas of C stem from the language BCPL, developed by Martin Richards. The influence of BCPL on C proceeded indirectly through the language B, which was written by Ken Thompson in 1970 for the first UNIX system on the DEC PDP-7.(c programming examples)
BCPL and B are “typeless” languages. By contrast, C provides a variety of data types. The fundamental types are characters, and integers and floating point numbers of several sizes. In addition, there is a hierarchy of derived data types created with pointers, arrays, structures, and unions. Expressions are formed from operators and operands; any expression, including an assignment or a function call, can be a statement. Pointers provide for machine-independent address arithmetic.(c programming examples)(c program examples)
C provides the fundamental control-flow constructions required for well-structured programs: statement grouping, decision making (if-else), selecting one of a set of possible cases (switch), looping with the termination test at the top (while, for) or at the bottom (do), and early loop exit (break).(c programming examples)(c program examples)
Functions may return values of basic types, structures, unions, or pointers. Any function may be called recursively. Local variables are typically “automatic,” or created anew with each invocation. Function definitions may not be nested but variables may be declared in a block-structured fashion. The functions of a C program may exist I separate source files that are compiled separately. Variables may be internal to a function, external but know only within a single source file, or visible to the entire program.(c programming examples)(c program examples)
A preprocessing step performs macro substitution on program text, inclusion of other source files, conditional compilation.(c programming examples)(c program examples)
C  is a relatively “low level” language. This characterization is not pejorative; it simply means that C deals with the same sort of object that most computers do, namely characters, numbers, and addresses. These may be combined and moved about with the arithmetic and logical operators implemented by real machines.(c programming examples)(c program examples)
C provides no operations to deal directly with composite objects such as character strings, sets, lists, or arrays. There are no operations that manipulate an entire array or string, although structures may be copied as a unit. The language does not define any storage allocation facility other than static definition and the stack discipline provided by the local variables of functions; there is n heap or garbage collection. Finally, C itself provides no input/output facilities; there are no READ or WRITE statements, and no built-in file access methods. All of these higher-level mechanisms must be provided by explicitly called functions. Most C implementations have included a reasonably standard collection of such functions.(c programming examples)(c program examples)



No comments :

Post a Comment