Computer Programming
Computer Programming
Before getting into computer programming, let us first understand computer programs and what
they do.
The two important terms that we have used in the above definition are −
Sequence of instructions
Computer Programming Language
To understand these terms, consider a situation when someone asks you about how to go to a
nearby KFC. What exactly do you do to tell him the way to go to KFC?
You will use Human Language to tell the way to go to KFC, something as follows −
First go straight, after half kilometer, take left from the red light and then drive around one
kilometer and you will find KFC at the right.
Here, you have used English Language to give several steps to be taken to reach KFC. If they are
followed in the following sequence, then you will reach KFC −
1. Go straight
2. Drive half kilometer
3. Take left
4. Drive around one kilometer
5. Search for KFC at your right side
Now, try to map the situation with a computer program. The above
sequence of instructions is actually a Human Program written in English Language, which
instructs on how to reach KFC from a given starting point. This same sequence could have been
given in Spanish, Hindi, Arabic, or any other human language, provided the person seeking
direction knows any of these languages.
Now, let's go back and try to understand a computer program, which is a sequence of instructions
written in a Computer Language to perform a specified task by the computer. Following is a
simple program written in Python programming Language −
print "Hello, World!"
The above computer program instructs the computer to print "Hello, World!" on the computer
screen.
Page 1 of 50
A computer program is also called a computer software, which can range from two lines
to millions of lines of instructions.
Computer program instructions are also called program source code and computer
programming is also called program coding.
A computer without a computer program is just a dump box; it is programs that make
computers active.
As we mentioned earlier, there are hundreds of programming languages, which can be used to
write computer programs and following are a few of them −
Java
C
C++
Python
PHP
Perl
Ruby
Uses of Computer Programs
Today computer programs are being used in almost every field, household, agriculture, medical,
entertainment, defense, communication, etc. Listed below are a few applications of computer
programs −
MS Word, MS Excel, Adobe Photoshop, Internet Explorer, Chrome, etc., are examples of
computer programs.
Computer programs are being used to develop graphics and special effects in movie
making.
Computer programs are being used to perform Ultrasounds, X-Rays, and other medical
examinations.
Computer programs are being used in our mobile phones for SMS, Chat, and voice
communication.
Computer Programmer
Someone who can write computer programs or in other words, someone who can do computer
programming is called a Computer Programmer.
Page 2 of 50
Based on computer programming language expertise, we can name a computer programmers as
follows −
C Programmer
C++ Programmer
Java Programmer
Python Programmer
PHP Programmer
Perl Programmer
Ruby Programmer
Algorithm
From programming point of view, an algorithm is a step-by-step procedure to resolve any
problem. An algorithm is an effective method expressed as a finite set of well-defined
instructions.
Thus, a computer programmer lists down all the steps required to resolve a problem before
writing the actual code. Following is a simple example of an algorithm to find out the largest
number from a given list of numbers −
The above algorithm has been written in a crude way to help beginners understand the concept.
You will come across more standardized ways of writing computer algorithms as you move on to
advanced levels of computer programming.
are well aware of English Language, which is a well-known Human Interface Language.
English has a predefined grammar, which needs to be followed to write English statements in a
correct way. Likewise, most of the Human Interface Languages (Hindi, English, Spanish,
French, etc.) are made of several elements like verbs, nouns, adjectives, adverbs, propositions,
and conjunctions, etc.
Page 3 of 50
Similar to Human Interface Languages, Computer Programming Languages are also made of
several elements. We will take you through the basics of those elements and make you
comfortable to use them in various programming languages. These basic elements include −
Programming Environment
Basic Syntax
Data Types
Variables
Keywords
Basic Operators
Decision Making
Loops
Numbers
Characters
Arrays
Strings
Functions
File I/O
We will explain all these elements in subsequent chapters with examples using different
programming languages. First, we will try to understand the meaning of all these terms in
general and then, we will see how these terms can be used in different programming languages.
This tutorial has been designed to give you an idea about the following most popular
programming languages −
C Programming
Java Programming
Python Programming
A major part of the tutorial has been explained by taking C as programming language and then
we have shown how similar concepts work in Java and Python. So after completion of this
tutorial, you will be quite familiar with these popular programming languages.
Though Environment Setup is not an element of any Programming Language, it is the first step
to be followed before setting on to write a program.
When we say Environment Setup, it simply implies a base on top of which we can do our
programming. Thus, we need to have the required software setup, i.e., installation on our PC
Page 4 of 50
which will be used to write computer programs, compile, and execute them. For example, if you
need to browse Internet, then you need the following setup on your machine −
If you are a PC user, then you will recognize the following screenshot, which we have taken
from the Internet Explorer while browsing tutorialspoint.com.
Similarly, you will need the following setup to start with programming using any programming
language.
In case you don’t have sufficient exposure to computers, you will not be able to set up either of
these software. So, we suggest you take the help from any technical person around you to set up
the programming environment on your machine from where you can start. But for you, it is
important to understand what these items are.
Text Editor
A text editor is a software that is used to write computer programs. Your Windows machine must
have a Notepad, which can be used to type programs. You can launch it by following these steps
−
Page 5 of 50
Start Icon → All Programs → Accessories → Notepad → Mouse Click on Notepad
You can use this software to type your computer program and save
it in a file at any location. You can download and install other good editors like Notepad++,
which is freely available.
If you are a Mac user, then you will have TextEdit or you can install some other commercial
editor like BBEdit to start with.
Compiler?
You write your computer program using your favorite programming language and save it in a
text file called the program file.
Now let us try to get a little more detail on how the computer understands a program written by
you using a programming language. Actually, the computer cannot understand your program
directly given in the text format, so we need to convert this program in a binary format, which
can be understood by the computer.
The conversion from text program to binary file is done by another software called Compiler and
this process of conversion from text formatted program to binary format file is called program
compilation. Finally, you can execute binary file to perform the programmed task.
Page 6 of 50
We are not going into the details of a compiler and the different phases of compilation.
So, if you are going to write your program in any such language, which needs compilation like
C, C++, Java and Pascal, etc., then you will need to install their compilers before you start
programming.
Interpreter
We just discussed about compilers and the compilation process. Compilers are required in case
you are going to write your program in a programming language that needs to be compiled into
binary format before its execution.
There are other programming languages such as Python, PHP, and Perl, which do not need any
compilation into binary format, rather an interpreter can be used to read such programs line by
line and execute them directly without any further conversion.
Page 7 of 50
So, if you are going to write your programs in PHP, Python, Perl, Ruby, etc., then you will need
to install their interpreters before you start programming.
Online Compilation
If you are not able to set up any editor, compiler, or interpreter on
your machine, then tutorialspoint.com provides a facility to compile and run almost all the
programs online with an ease of a single click.
So do not worry and let's proceed further to have a thrilling experience to become a computer
programmer in simple and easy steps.
Let’s start with a little coding, which will really make you a computer programmer. We are
going to write a single-line computer program to write Hello, World! on your screen. Let’s see
how it can be written using different programming languages.
Hello World Program in C
Try the following example using our online compiler option available
at www.compileonline.com.
Page 8 of 50
For most of the examples given in this tutorial, you will find a Try it option in our website code
sections at the top right corner that will take you to the online compiler.
Try to change the content inside printf(), i.e., type anything in place of Hello World! and then
check its result. It just prints whatever you keep inside the two double quotes.
Live Demo
#include <stdio.h>
int main() {
/* printf() function to write Hello, World! */
printf( "Hello, World!" );
}
Hello, World!
This little Hello World program will help us understand various basic concepts related to C
Programming.
Every C program starts with main(), which is called the main function, and then it is followed by
a left curly brace. The rest of the program instruction is written in between and finally a right
curly brace ends the program.
The coding part inside these two curly braces is called the program body. The left curly brace
can be in the same line as main(){ or in the next line like it has been mentioned in the above
program.
Functions
Functions are small units of programs and they are used to carry out a specific task. For example,
the above program makes use of two functions: main() and printf(). Here, the function main()
provides the entry point for the program execution and the other function printf() is being used to
print an information on the computer screen.
You can write your own functions which we will see in a separate chapter, but C programming
itself provides various built-in functions like main(), printf(), etc., which we can use in our
programs based on our requirement.
Some of the programming languages use the word sub-routine instead of function, but their
functionality is more or less the same.
Page 9 of 50
Comments
A C program can have statements enclosed inside /*.....*/. Such
statements are called comments and these comments are used to make the programs user friendly
and easy to understand. The good thing about comments is that they are completely ignored by
compilers and interpreters. So you can use whatever language you want to write your comments.
Whitespaces
When we write a program using any programming language, we use various printable characters
to prepare programming statements. These printable characters are a, b, c,......z, A, B, C,.....Z, 1,
2, 3,...... 0, !, @, #, $, %, ^, &, *, (, ), -, _, +, =, \, |, {, }, [, ], :, ;, <, >, ?, /, \, ~. `. ", ' . Hope I'm
not missing any printable characters from your keyboard.
Apart from these characters, there are some characters which we use very frequently but they are
invisible in your program and these characters are spaces, tabs (\t), new lines(\n). These
characters are called whitespaces.
These three important whitespace characters are common in all the programming languages and
they remain invisible in your text document −
A line containing only whitespace, possibly with a comment, is known as a blank line, and a C
compiler totally ignores it. Whitespace is the term used in C to describe blanks, tabs, newline
characters, and comments. So you can write printf("Hello, World!" ); as shown below. Here all
the created spaces around "Hello, World!" are useless and the compiler will ignore them at the
time of compilation.
Live Demo
#include <stdio.h>
int main() {
If we make all these whitespace characters visible, then the above program will look like this and
you will not be able to compile it −
#include <stdio.h>\n
\n
int main()\n
{
\n
\t/* printf() function to write Hello, World! */
\n
\tprintf(\t"Hello, World!"\t);\n
\n
}\n
Semicolons
Every individual statement in a C Program must be ended with a
semicolon (;), for example, if you want to write "Hello, World!" twice, then it will be written as
follows −
Live Demo
#include <stdio.h>
int main() {
/* printf() function to write Hello, World! */
printf( "Hello, World!\n" );
printf( "Hello, World!" );
}
Hello, World!
Hello, World!
Here, we are using a new line character \n in the first printf()
function to create a new line. Let us see what happens if we do not use this new line character −
Live Demo
#include <stdio.h>
int main() {
/* printf() function to write Hello, World! */
printf( "Hello, World!" );
printf( "Hello, World!" );
}
Page 11 of 50
This program will produce the following result −
Program Explanation
Let us understand how the above C program works. First of all, the above program is converted
into a binary format using C compiler. So let’s put this code in test.c file and compile it as
follows −
Hello, World!
Here, when we execute the binary a.out file, the computer enters
inside the program starting from main() and encounters a printf() statement. Keep a note that the
line inside /*....*/ is a comment and it is filtered at the time of compilation. So printf() function
instructs the computer to print the given line at the computer screen. Finally, it encounters a right
curly brace which indicates the end of main() function and exits the program.
Syntax Error
If you do not follow the rules defined by the programing language, then at the time of
compilation, you will get syntax errors and the program will not be compiled. From syntax point
of view, even a single dot or comma or a single semicolon matters and you should take care of
such small syntax as well. In the following example, we have skipped a semicolon, let's try to
compile the program −
Live Demo
#include <stdio.h>
main() {
printf("Hello, World!")
}
Page 12 of 50
main.c: In function 'main':
main.c:7:1: error: expected ';' before '}' token
}
^
So the bottom-line is that if you are not following proper syntax defined by the programming
language in your program, then you will get syntax errors. Before attempting another
compilation, you will need to fix them and then proceed.
Hello, World!
Hello World Program in Python
Following is the equivalent program written in Python. This program will also produce the same
result Hello, World!.
Live Demo
Hello, World!
Hope you noted that for C and Java examples, first we are compiling the programs and then
executing the produced binaries, but in Python program, we are directly executing it. As we
explained in the previous chapter, Python is an interpreted language and it does not need an
intermediate step called compilation.
Python does not require a semicolon (;) to terminate a statement, rather a new line always means
termination of the statement.
Page 13 of 50
Computer Programming - Data Types
Let's discuss about a very simple but very important concept available in almost all the
programming languages which is called data types. As its name indicates, a data type represents
a type of the data which you can process using your computer program. It can be numeric,
alphanumeric, decimal, etc.
Let’s keep Computer Programming aside for a while and take an easy example of adding two
whole numbers 10 & 20, which can be done simply as follows −
10 + 20
Let's take another problem where we want to add two decimal numbers 10.50 & 20.50, which
will be written as follows −
10.50 + 20.50
The two examples are straightforward. Now let's take another example where we want to record
student information in a notebook. Here we would like to record the following information −
Name:
Class:
Section:
Age:
Sex:
Now, let's put one student record as per the given requirement −
The first example dealt with whole numbers, the second example added two decimal numbers,
whereas the third example is dealing with a mix of different data. Let's put it as follows −
Student name "Zara Ali" is a sequence of characters which is also called a string.
Student class "6th" has been represented by a mix of whole number and a string of two
characters. Such a mix is called alphanumeric.
Student section has been represented by a single character which is 'J'.
Student age has been represented by a whole number which is 13.
Page 14 of 50
Student sex has been represented by a single character which is 'F'.
This way, we realized that in our day-to-day life, we deal with different types of data such as
strings, characters, whole numbers (integers), and decimal numbers (floating point numbers).
Similarly, when we write a computer program to process different types of data, we need to
specify its type clearly; otherwise the computer does not understand how different operations can
be performed on that given data. Different programming languages use different keywords to
specify different data types. For example, C and Java programming languages use int to specify
integer data, whereas char specifies a character data type.
Subsequent chapters will show you how to use different data types in different situations. For
now, let's check the important data types available in C, Java, and Python and the keywords we
will use to specify those data types.
C and Java support almost the same set of data types, though Java supports additional data types.
For now, we are taking a few common data types supported by both the programming languages
−
These data types are called primitive data types and you can use these data types to build more
complex data types, which are called user-defined data type, for example a string will be a
sequence of characters.
Page 15 of 50
Python Data Types
Python has five standard data types but this programming language does not make use of any
keyword to specify a particular data type, rather Python is intelligent enough to understand a
given data type automatically.
Numbers
String
List
Tuple
Dictionary
Here, Number specifies all types of numbers including decimal numbers and string represents a
sequence of characters with a length of 1 or more characters. For now, let's proceed with these
two data types and skip List, Tuple, and Dictionary, which are advanced data types in Python.
Variables are the names you give to computer memory locations which are used to store values
in a computer program.
For example, assume you want to store two values 10 and 20 in your program and at a later
stage, you want to use these two values. Let's see how you will do it. Here are the following
three simple steps −
int main() {
int a;
int b;
}
The above program creates two variables to reserve two memory locations with names a and b.
We created these variables using int keyword to specify variable data type which means we
want to store integer values in these two variables. Similarly, you can create variables to
store long, float, char or any other data type. For example −
/* variable to store long value */
Page 16 of 50
long a;
You can create variables of similar type by putting them in a single line but separated by comma
as follows −
#include <stdio.h>
int main() {
int a, b;
}
Listed below are the key points about variables that you need to keep in mind −
A variable name can hold a single type of value. For example, if variable a has been
defined int type, then it can store only integer.
C programming language requires a variable creation, i.e., declaration before its usage in
your program. You cannot use a variable name in your program without creating it,
though programming language like Python allows you to use a variable name without
creating it.
You can use a variable name only once inside your program. For example, if a
variable a has been defined to store an integer value, then you cannot define a again to
store any other type of value.
There are programming languages like Python, PHP, Perl, etc., which do not want you to
specify data type at the time of creating variables. So you can store integer, float, or long
without specifying their data type.
You can give any name to a variable like age, sex, salary, year1990 or anything else you
like to give, but most of the programming languages allow to use only limited characters
in their variables names. For now, we will suggest to use only a....z, A....Z, 0....9 in your
variable names and start their names using alphabets only instead of digits.
Almost none of the programming languages allow to start their variable names with a
digit, so 1990year will not be a valid variable name whereas year1990 or ye1990ar are
valid variable names.
Every programming language provides more rules related to variables and you will learn them
when you will go in further detail of that programming language.
You have seen how we created variables in the previous section. Now, let's store some values in
those variables −
#include <stdio.h>
Page 17 of 50
int main() {
int a;
int b;
a = 10;
b = 20;
}
The above program has two additional statements where we are storing 10 in variable a and 20 is
being stored in variable b. Almost all the programming languages have similar way of storing
values in variable where we keep variable name in the left hand side of an equal sign = and
whatever value we want to store in the variable, we keep that value in the right hand side.
Now, we have completed two steps, first we created two variables and then we stored required
values in those variables. Now variable a has value 10 and variable b has value 20. In other
words we can say, when above program is executed, the memory location named a will hold 10
and memory location b will hold 20.
Access stored values in variables
If we do not use the stored values in the variables, then there is no point in creating variables and
storing values in them. We know that the above program has two variables a and b and they
store the
values 10 and 20, respectively. So let's try to print the values stored in these two variables.
Following is a C program, which prints the values stored in its variables –
Live Demo
#include <stdio.h>
int main() {
int a;
int b;
a = 10;
b = 20;
Value of a = 10
Value of b = 20
You must have seen printf() function in the previous chapter where we had used it to print
"Hello, World!". This time, we are using it to print the values of variables. We are making use
of %d, which will
Page 18 of 50
be replaced with the values of the given variable in printf() statements. We can print both the
values using a single printf() statement as follows −
Live Demo
#include <stdio.h>
int main() {
int a;
int b;
a = 10;
b = 20;
a = 10;
b = 20;
Page 19 of 50
Value of a = 10
Value of b = 20
Value of a = 10 and value of b = 20
Variables in Python
Following is the equivalent program written in Python. This program will create two
variables a and b and at the same time, assign 10 and 20 in those variables.
Python does not want you to specify the data type at the time of variable creation and there is no
need to create variables in advance.
Live Demo
a = 10
b = 20
Value of a = 10
Value of b = 20
Value of a = 10 and value of b = 20
You can use the following syntax in C and Java programming to declare variables and assign
values at the same time −
Live Demo
#include <stdio.h>
int main() {
int a = 10;
int b = 20;
Page 20 of 50
Computer Programming - Keywords
So far, we have covered two important concepts called variables and their data types. We
discussed how to use int, long, and float to specify different data types. We also learnt how to
name the variables to store different values.
Though this chapter is not required separately because reserved keywords are a part of basic
programming syntax, we kept it separate to explain it right after data types and variables to make
it easy to understand.
Like int, long, and float, there are many other keywords supported by C programming language
which we will use for different purpose. Different programming languages provide different set
of reserved keywords, but there is one important & common rule in all the programming
languages that we cannot use a reserved keyword to name our variables, which means we cannot
name our variable like int or float rather these keywords can only be used to specify a variable
data type.
For example, if you will try to use any reserved keyword for the purpose of variable name, then
you will get a syntax error.
Live Demo
#include <stdio.h>
int main() {
int float;
float = 10;
When you compile the above program, it produces the following error −
Let's now give a proper name to our integer variable, then the above program should compile and
execute successfully −
Page 21 of 50
Live Demo
#include <stdio.h>
int main() {
int count;
count = 10;
Here is a table having almost all the keywords supported by C Programming language −
double
Here is a table having almost all the keywords supported by Java Programming language −
Page 22 of 50
byte case catch char
volatile while
Here is a table having almost all the keywords supported by Python Programming language −
assert finally or
Page 23 of 50
break for pass
def if return
elif in while
else is with
We know you cannot memorize all these keywords, but we have listed them down for your
reference purpose and to explain the concept of reserved keywords. So just be careful while
giving a name to your variable, you should not use any reserved keyword for that programming
language.
Computer Programming - Operators
2+3
P(x) = x4 + 7x3 - 5x + 9.
Page 24 of 50
These two statements are called arithmetic expressions in a
programming language and plus, minus used in these expressions are called arithmetic operators
and the values used in these expressions like 2, 3 and x, etc., are called operands. In their
simplest form, such expressions produce numerical results.
Similarly, a programming language provides various arithmetic operators. The following table
lists down a few of the important arithmetic operators available in C programming language.
Assume variable A holds 10 and variable B holds 20, then −
Live Demo
#include <stdio.h>
int main() {
int a, b, c;
a = 10;
b = 20;
c = a + b;
printf( "Value of c = %d\n", c);
c = a - b;
printf( "Value of c = %d\n", c);
c = a * b;
Page 25 of 50
printf( "Value of c = %d\n", c);
c = b / a;
printf( "Value of c = %d\n", c);
c = b % a;
printf( "Value of c = %d\n", c);
}
Value of c = 30
Value of c = -10
Value of c = 200
Value of c = 2
Value of c = 0
Relational Operators
Consider a situation where we create two variables and assign them some values as follows −
A = 20
B = 10
Here, it is obvious that variable A is greater than B in values. So, we need the help of some
symbols to write such expressions which are called relational expressions. If we use C
programming language, then it will be written as follows −
(A > B)
Here, we used a symbol > and it is called a relational operator and in their simplest form, they
produce Boolean results which means the result will be either true or false. Similarly, a
programming language provides various relational operators. The following table lists down a
few of the important relational operators available in C programming language. Assume
variable A holds 10 and variable B holds 20, then −
Operator Description Example
Page 26 of 50
becomes true.
#include <stdio.h>
int main() {
int a, b;
a = 10;
b = 20;
Page 27 of 50
/* if b is equal to 10 then this body will be executed */
printf( "b is equal to 10\n");
}
a is equal to 10
a is less than b
a is not equal to b
Logical Operators
Logical operators are very important in any programming language and they help us take
decisions based on certain conditions. Suppose we want to combine the result of two conditions,
then logical AND and OR logical operators help us in producing the final result.
The following table shows all the logical operators supported by the C language. Assume
variable A holds 1 and variable B holds 0, then −
Operator Description Example
Called Logical AND operator. If both the operands are non- (A && B)
&&
zero, then condition becomes true. is false.
! Called Logical NOT Operator. Use to reverses the logical !(A && B)
Page 28 of 50
state of its operand. If a condition is true then Logical NOT
is true.
operator will make false.
Try the following example to understand all the logical operators available in C programming
language –
Live Demo
#include <stdio.h>
int main() {
int a = 1;
int b = 0;
if ( a && b ) {
When you compile and execute the above program, it produces the following result −
You can try to execute the following program to see the output, which must be identical to the
result generated by the above example.
Page 29 of 50
Live Demo
a = 10;
b = 20;
c = a + b;
System.out.println("Value of c = " + c );
c = a - b;
System.out.println("Value of c = " + c );
c = a * b;
System.out.println("Value of c = " + c );
c = b / a;
System.out.println("Value of c = " + c );
c = b % a;
System.out.println("Value of c = " + c );
if( a == 10 ) {
Value of c = 30
Value of c = -10
Value of c = 200
Value of c = 2
Value of c = 0
Page 30 of 50
a is equal to 10
Operators in Python
Following is the equivalent program written in Python. This program will create two
variables a and b and at the same time, assign 10 and 20 in those variables. Fortunately, C
programming and Python programming languages provide almost identical set of operators. This
program will create two variables a and b, very similar to C programming, then we assign 10 and
20 in these variables and finally, we will use different arithmetic and relational operators.
You can try to execute the following program to see the output, which must be identical to the
result generated by the above example.
Live Demo
a = 10
b = 20
c=a+b
print "Value of c = ", c
c=a-b
print "Value of c = ", c
c=a*b
print "Value of c = ", c
c=a/b
print "Value of c = ", c
c=a%b
print "Value of c = ", c
if( a == 10 ):
print "a is equal to 10"
Value of c = 30
Value of c = -10
Value of c = 200
Value of c = 0
Value of c = 10
a is equal to 10
Page 31 of 50
Decision Statements
Decision making is critical to computer programming. There will be many situations when you
will be given two or more options and you will have to select an option based on the given
conditions. For example, we want to print a remark about a student based on his secured marks.
Following is the situation −
If given marks are less than 95 and more than 30, then
Student is average
Now, the question is how to write a programming code to handle such situations. Almost all the
programming languages provide conditional statements that work based on the following flow
diagram −
Let's write a C program with the help of if conditional statements to convert the above given
situation into a programming code −
Live Demo
#include <stdio.h>
int main() {
int x = 45;
Page 32 of 50
}
if( x < 30) {
Student is average
The above program uses if conditional statements. Here, the first if statement checks whether
the given condition i.e., variable x is greater than 95 or not and if it finds the condition is true,
then the conditional body is entered to execute the given statements. Here we have only
one printf() statement to print a remark about the student.
Similarly, the second if statement works. Finally, the third if statement is executed, here we
have the following two conditions −
First condition is x > 95
Second condition is x < 30
The computer evaluates both the given conditions and then, the overall result is combined with
the help of the binary operator &&. If the final result is true, then the conditional statement will
be executed, otherwise no statement will be executed.
This tutorial will give you a basic idea on various forms of if statements and an introduction
to switch statements available in C programming language. Different programming languages
provide different types of decision-making statements, but the basic concept remains the same as
explained in this tutorial.
if...else statement
An if statement can be followed by an optional else statement, which executes when the Boolean
expression is false. The syntax of an if...else statement in C programming language is −
if(boolean_expression) {
The above syntax can be represented in the form of a flow diagram as shown below −
An if...else statement is useful when we have to take a decision out of two options. For example,
Page 33 of 50
if a student secures more marks than 95, then the student is brilliant, otherwise no such situation
can be coded, as follows −
Live Demo
#include <stdio.h>
int main() {
int x = 45;
Page 34 of 50
#include <stdio.h>
int main() {
int x = 45;
Student is average
The Switch Statement
A switch statement is an alternative of if statements which allows a variable to be tested for
equality against a list of values. Each value is called a case, and the variable being switched on is
checked for each switch case. It has the following syntax −
switch(expression){
case ONE :
statement(s);
break;
case TWO:
statement(s);
break;
......
default :
statement(s);
}
The expression used in a switch statement must give an integer value, which will be compared
for equality with different cases given. Wherever an expression value matches with a case value,
the body of that case will be executed and finally, the switch will be terminated using
a break statement. If no break statements are provided, then the computer continues executing
other statements available below to the matched case. If none of the cases matches, then the
default case body is executed.
Page 35 of 50
The above syntax can be represented in the form of a flow diagram as shown below −
Now, let's consider another example where we want to write the equivalent English word for a
given number. Then, it can be coded as follows −
Live Demo
#include <stdio.h>
int main() {
int x = 2;
switch( x ){
case 1 :
printf( "One\n");
break;
case 2 :
printf( "Two\n");
break;
case 3 :
printf( "Three\n");
break;
case 4 :
printf( "Four\n");
break;
default :
printf( "None of the above...\n");
}
}
Two
Decisions in Java
Following is the equivalent program written in Java which too
supports if, if...else, if...elseif...else, and switch statements.
You can try to execute the following program to see the output, which must be identical to the
result generated by the above C example.
Live Demo
Page 36 of 50
public class DemoJava {
public static void main(String []args) {
int x = 45;
When the above program is executed, it produces the following result −Student is average
Decisions in Python
Following is the equivalent program written in Python. Python provides if, if...else, if...elif...else,
and switch statements. Here, you must note that Python does not make use of curly braces for
conditional body, instead it simply identifies the body of the block using indentation of the
statements.
You can try to execute the following program to see the output −
Live Demo
x = 45
if x > 95:
print "Student is brilliant"
elif x < 30:
print "Student is poor"
elif x < 95 and x > 30:
print "Student is average"
When the above program is executed, it produces the following result −Student is average
The end
Print Page
Page 37 of 50
Let's consider a situation when you want to print Hello, World! five times. Here is a simple C
program to do the same −
Live Demo
#include <stdio.h>
int main() {
printf( "Hello, World!\n");
printf( "Hello, World!\n");
printf( "Hello, World!\n");
printf( "Hello, World!\n");
printf( "Hello, World!\n");
}
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!
It was simple, but again, let's consider another situation when you want to write Hello, World! a
thousand times. We can certainly not write printf() statements a thousand times. Almost all the
programming languages provide a concept called loop, which helps in executing one or more
statements up to a desired number of times. All high-level programming languages provide
various forms of loops, which can be used to execute one or more statements repeatedly.
Let's write the above C program with the help of a while loop and later, we will discuss how this
loop works
Live Demo
#include <stdio.h>
int main() {
int i = 0;
while ( i < 5 ) {
printf( "Hello, World!\n");
i = i + 1;
}
}
Hello, World!
Page 38 of 50
Hello, World!
Hello, World!
Hello, World!
Hello, World!
The above program makes use of a while loop, which is being used to execute a set of
programming statements enclosed within {....}. Here, the computer first checks whether the
given condition, i.e., variable "a" is less than 5 or not and if it finds the condition is true, then the
loop body is entered to execute the given statements. Here, we have the following two statements
in the loop body −
First statement is printf() function, which prints Hello World!
Second statement is i = i + 1, which is used to increase the value of variable i
After executing all the statements given in the loop body, the computer goes back to while( i < 5)
and the given condition, (i < 5), is checked again, and the loop is executed again if the condition
holds true. This process repeats till the given condition remains true which means variable "a"
has a value less than 5.
This tutorial has been designed to present programming's basic concepts to non-programmers, so
let's discuss the two most important loops available in C programming language. Once you are
clear about these two loops, then you can pick-up C programming tutorial or a reference book
and check other loops available in C and the way they work.
Page 39 of 50
The while Loop
A while loop available in C Programming language has the following syntax −
while ( condition ) {
/*....while loop body ....*/
}
The above code can be represented in the form of a flow diagram as shown below −
Page 40 of 50
The do...while Loop
A while loop checks a given condition before it executes any statements given in the body part.
C programming provides another form of loop, called do...while that allows to execute a loop
body before checking a given condition. It has the following syntax –
do {
/*....do...while loop body ....*/
}
while ( condition );
The above code can be represented in the form of a flow diagram as shown below −
If you will write the above example using do...while loop, then Hello, World will produce the
same result −
Live Demo
#include <stdio.h>
int main() {
int i = 0;
do {
printf( "Hello, World!\n");
i = i + 1;
}
while ( i < 5 );
Page 41 of 50
}
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!
The break statement
When the break statement is encountered inside a loop, the loop is immediately terminated and
the program control resumes at the next statement following the loop. The syntax for
a break statement in C is as follows −
break;
A break statement can be represented in the form of a flow diagram as shown below −
Following is a variant of the above program, but it will come out after printing Hello World!
only three times −
Live Demo
#include <stdio.h>
int main() {
int i = 0;
Page 42 of 50
do {
printf( "Hello, World!\n");
i = i + 1;
if( i == 3 ) {
break;
}
}
while ( i < 5 );
}
Hello, World!
Hello, World!
Hello, World!
The continue statement
The continue statement in C programming language works somewhat like the break statement.
Instead of forcing termination, continue forces the next iteration of the loop to take place,
skipping any code in between. The syntax for a continue statement in C is as follows −
continue;
A continue statement can be represented in the form of a flow diagram as shown below −
Following is a variant of the above program, but it will skip printing when the variable has a
value equal to 3 −
Page 43 of 50
Live Demo
#include <stdio.h>
int main() {
int i = 0;
do {
if( i == 3 ) {
i = i + 1;
continue;
}
printf( "Hello, World!\n");
i = i + 1;
}
while ( i < 5 );
}
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Loops in Java
Following is the equivalent program written in Java that too
supports while and do...while loops. The following program prints Hello, World! five times as
we did in the case of C Programming −
You can try to execute the following program to see the output, which must be identical to the
result generated by the above example.
Live Demo
while ( i < 5 ) {
System.out.println("Hello, World!");
i = i + 1;
}
}
}
The break and continue statements in Java programming work quite
Page 44 of 50
the same way as they work in C programming.
Loops in Python
Following is the equivalent program written in Python. Python too
supports while and do...while loops. The following program prints Hello, World! five times as
we did in case of C Programming.
Here you must note that Python does not make use of curly braces for the loop body, instead it
simply identifies the body of the loop using indentation of the statements.
You can try to execute the following program to see the output. To show the difference, we have
used one more print statement, which will be executed when the loop will be over.
Live Demo
i=0
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Loop ends
The break and continue statements in Python work quite the same way as they do in C
programming.
A function is a block of organized, reusable code that is used to perform a single, related action.
Functions provide better modularity for your application and a high degree of code reusing. You
have already seen various functions like printf() and main(). These are called built-in functions
Page 45 of 50
provided by the language itself, but we can write our own functions as well and this tutorial will
teach you how to write and use those functions in C programming language.
Good thing about functions is that they are famous with several names. Different programming
languages name them differently, for example, functions, methods, sub-routines, procedures, etc.
If you come across any such terminology, then just imagine about the same concept, which we
are going to discuss in this tutorial.
Let's start with a program where we will define two arrays of numbers and then from each array,
we will find the biggest number. Given below are the steps to find out the maximum number
from a given set of numbers −
Live Demo
#include <stdio.h>
int main() {
int set1[5] = {10, 20, 30, 40, 50};
int set2[5] = {101, 201, 301, 401, 501};
int i, max;
Page 46 of 50
/* Now process second set of numbers available in set2[] */
max = set2[0];
i = 1;
while( i < 5 ) {
if( max < set2[i] ) {
max = set2[i];
}
i = i + 1;
}
printf("Max in second set = %d\n", max );
}
When the above code is compiled and executed, it produces the following result −
If you are clear about the above example, then it will become easy to understand why we need a
function. In the above example, there are only two sets of numbers, set1 and set2, but consider a
situation where we have 10 or more similar sets of numbers to find out the maximum numbers
from each set. In such a situation, we will have to repeat, processing 10 or more times and
ultimately, the program will become too large with repeated code. To handle such situation, we
write our functions where we try to keep the source code which will be used again and again in
our programming.
Now, let's see how to define a function in C programming language and then in the subsequent
sections, we will explain how to use them.
Defining a Function
return [expression];
}
A function definition in C programming consists of a function header and a function body. Here
are all the parts of a function −
Return Type − A function may return a value. The return_type is the data type of the
value the function returns. Some functions perform the desired operations without
returning a value. In this case, the return_type is the keyword void.
Function Name − This is the actual name of the function. The function name and the
parameter list together constitute the function signature.
Page 47 of 50
Parameter List − A parameter is like a placeholder. When a function is invoked, you
pass a value as a parameter. This value is referred to as the actual parameter or argument.
The parameter list refers to the type, order, and number of the parameters of a function.
Parameters are optional; that is, a function may contain no parameters.
Function Body − The function body contains a collection of statements that defines what
the function does.
Calling a Function
While creating a C function, you give a definition of what the function has to do. To use a
function, you will have to call that function to perform a defined task.
Now, let's write the above example with the help of a function −
Live Demo
#include <stdio.h>
max = set[0];
i = 1;
while( i < 5 ) {
if( max < set[i] ) {
max = set[i];
}
i = i + 1;
}
return max;
}
main() {
int set1[5] = {10, 20, 30, 40, 50};
int set2[5] = {101, 201, 301, 401, 501};
int max;
When the above code is compiled and executed, it produces the following result −
Page 48 of 50
Max in first set = 50
Max in second set = 501
Functions in Java
If you are clear about functions in C programming, then it is easy to
understand them in Java as well. Java programming names them as methods, but the rest of the
concepts remain more or less same.
Following is the equivalent program written in Java. You can try to execute it to see the output −
Live Demo
while( i < 5 ) {
if( max < set[i] ) {
max = set[i];
}
i = i + 1;
}
return max;
}
}
Page 49 of 50
Functions in Python
Once again, if you know the concept of functions in C and Java programming, then Python is not
much different. Given below is the basic syntax of defining a function in Python −
return [expression]
Using this syntax of function in Python, the above example can be written as follows −
Live Demo
while( i < 5 ):
if( max < set[i] ):
max = set[i]
i=i+1
return max
Page 50 of 50