Professional Documents
Culture Documents
CH 05 Loops
CH 05 Loops
5.1 Objective
It is expected to gain skills of repeating a statement by using for and while control structures (called loops).
5.2 for
Exercise 5.1 How to display Hello, World!?
columns
columns
# include < stdio .h > co
columns
columns co
columns
columns
int main ( void ) co
{ int i ;
columns
columns co
columns
columns co
columns
columns
for ( i =0; i <5; i = i + 1) co
columns
columns
{ co
columns
columns
printf ( " Hello , World !\ n " ) ; co
columns
columns
} co
columns
columns co
return 0;
columns
columns co
columns
columns
} co
• If i<5 is true, firstly, the statement printf("Hello, World!\n"); is executed and then secondly, the
update expression i = i + 1 is executed.
• Then the conditional expression i<5 is re-evaluated, and if true, the statement printf("Hello, World!\n");
is executed again.
• When i<5 becomes false, the loop ends, and the execution continues at the statement that follows the
loop.
• General form of for control statement is given in Figure 5.1.
1
Figure 5.1: Floawchart of for control statement
columns
columns
# include < stdio .h > co
columns
columns
main () co
columns
columns
{ co
columns
columns
int i ; co
columns
columns
for ( i = 1; i <= 100; i ++) co
columns
columns
{ co
columns
columns
printf ( " % d \ n " ,i ) ; co
}
columns
columns co
columns
columns
} co
columns
columns
# include < stdio .h > co
columns
columns
main () co
columns
columns
{ co
columns
columns
int i ; co
columns
columns
for ( i = 100; i > 0; i - -) co
{
columns
columns co
columns
columns
printf ( " % d \ n " ,i ) ; co
columns
columns
} co
columns
columns
} co
columns
columns co
2
Listing 5.4: Display multiples of five from 0 to 100.
columns
columns
# include < stdio .h > co
columns
columns co
main ()
columns
columns co
columns
columns
{ co
int i , sum ;
columns
columns co
columns
columnsfor ( i = 0 , sum =0; i <= 100; i +=5) co
columns{
columns co
columns
columns sum = sum + i ; co
columns}
columns co
columns
columns co
columns
columnsprintf ( " \ nSum of integers from 1 to 100 is % d \ n " , sum ) ; co
columns
columns
} co
columns
columns co
Exercise 5.5 Write programs by using for loops to calculate the following.
(a) Sum of odd numbers between 0 and 1000
(b) Sum of even numbers between 0 and 1000
(c) table of the Products of 2, from 2 to 100.
(d) difference between the sum of first 20 triangular numbers and the sum of first 10 square
numbers
5.3 while
the following statement, known as while loop, is also can be used to repeatedly execute statements.
columns
columns
while ( Expression ) co
columns
columns
{ co
columns
columns
Statement ; co
columns
columns
} co
The functionality of while loop, as given in the flowchart in Figure 5.2, is as follows.
• The Expression is evaluated and if true the Statement is executed.
• Above is repeated until Expression becomes false.
3
Figure 5.2: Flow Chart of while statement
columns
columns
# include < stdio .h > co
main ()
columns
columns co
columns
columns
{ co
int i = 1;
columns
columns co
columns
columns
while ( i <= 10) co
{
columns
columns co
columns
columns printf ( " Hello , World ! " ) ; co
columns
columns i ++; co
columns
columns
} co
columns
columns
} co
columns
columns co
5.4 do - while
The loop do - while has the format
do
{
Statement;
}
while(Expression);
It executes the Statement, then evaluates the Expression. If true, this is repeated. If false, the loop is
terminated.
4
Listing 5.9: Continuous display.
columns
columns
# include < stdio .h > co
columns
columns
main () co
{
columns
columns co
columns
columns
char key ; co
printf ( " Press Q to exit " ) ;
columns
columns co
columns
columns
scanf ( " % c " ,& key ) ; co
while ( key != ’Q ’)
columns
columns co
columns
columns
{ printf ( " Press Q to exit " ) ; co
columns
columns
scanf ( " % c " ,& key ) ; co
columns
columns
} co
columns
columns
} co
columns
columns co
columns
columns
# include < stdio .h > co
columns
columns co
main ()
columns
columns co
columns
columns
{ co
double n , sum =0;
columns
columns co
columns
columns co
printf ( " \ nCalculator of Total " ) ;
columns
columns co
columns
columns
printf ( " \ n = == = = == = = == = = == = = == " ) ; co
columns
columns co
columns
columns
printf ( " \ nEnter positive number N , ( or 0 to Quit ) " ) ; co
columns
columns co
columns
columns
do co
columns
columns
{ co
columns
columns
printf ( " \ nEnter a number : " ) ; co
columns
columns
scanf ( " % lf " , & n ) ; co
columns
columns co
columns
columns
sum += n ; co
columns
columns co
columns
columns
printf ( " \ nCurrent total = % lf " , sum ) ; co
columns
columns co
columns
columns
} co
columns
columns
while ( n > 0.0) ; co
columns
columns co
columns
columns
} co
5.5 Assignments
5.1 Display the table of multiplication up to 10 for the given number. Example:
Enter a number : 8
8x1=8
8 x 2 = 16
8 x 3 = 24
8 x 4 = 32
8 x 5 = 40
8 x 6 = 48
8 x 7 = 56
8 x 8 = 64
8 x 9 = 72
8 x 10 = 80
5.2 Celsius values for user given range of Fahrenheit values. The incremental step also given by the user.
5.3 Consider the factorial n!
n1 = 1
5
n2 = 1 × 2
n3 = 1 × 2 × 3
...
ni = ni−1 × i
Display ni for i = 1, 2 . . . N for user given N .
—-
6
References
[1] Brian Kernighan and Dennis Ritchie (1998): The C Programming Language, Second Edition. Prentice
Hall, NJ, USA. ISBN 0-13-110362-8.