Module 2 - Google Docs c Programing
Module 2 - Google Docs c Programing
ODULE-2
M
ANAGING INPUT AND OUTPUT, BRANCHING AND LOOPING
M
In programming input mean reading data from the input device or a file andOutputmeans
displayingtheresultsonthescreen.Cprovidesanumberofinputandoutputfunctions.These
functionsarepredefinedintherespectiveheaderfiles.Theinputandoutputfunctionsareused
in the program whose functionality are predefined in the header file“#include<stdio.h>”
Example: if we want to store the values 50 and 31from the keyboard in variables num1 and
num2 then the input function is read as
scanf(“%d%d”,&num1,&num2);
the value 50 will be assigned to num1 and value 31 will be assigned to num2
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
printf( ):In C programming language, printf() functionis used to print the “character, string,
float, integer, octal and hexadecimal values” onto the output screen. The features of printf()
can be effectively exploited to control the alignmentand spacing of printouts on terminals.
Syntax:
printf(“Text Message”);
OR
printf(“format specifier”,variablelist);
where:
format specifier indicates the type of data to be displayed
variable list indicates the value present in the variable.
the number of format specifier must match the number of variables in the variablelist.
Example: if we want to display the values stored in variables num1 and num2 then the printf
statement can be written as
printf(“The Value of num1 = %d and The value of num2 = %d\n”,num1,num2); This
statement will display the values stored in the respective variables. The output will be of the
form:
The Value of num1 = 50 and The value of num2 = 31
# include<stdio.h>
void main()
{
int a,b,sum;
rintf(“Enter two numbers\n”);
p
scanf(“%d%d”,&a,&b);
s um=a+b;
printf(“ Addition of two Numbers=%d\n”,sum);
}
getch():isusedtoreadacharacterfromthekeyboard,thecharacterenteredisnotdisplayed
or echoedonthescreenthefunctionsdon’tneedareturnkeypressedtoterminatethereading
of a character. A character entered will itself terminates reading
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
xample:
E
#include<stdio.h>
void main()
{
char ch;
printf(“Enter a character\n”);
ch=getch();
printf(“The entered character is %c\n”,ch);
}
getche(): is used to read a character from the keyboard, the character entered is echoed or
displayedonthescreen.thefunctionsdon’tneedareturnkeypressedtoterminatethereading
of a character. A character entered will itself terminates reading.
xample:
E
#include<stdio.h>
void main()
{
char ch;
printf(“Enter a character\n”);
ch=getche();
printf(“The entered character is %c\n”,ch);
}
xample:
E
#include<stdio.h>
void main()
{
char ch;
printf(“Enter a character\n”);
ch=getchar();
p rintf(“The entered character is %c\n”,ch);
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
xample:
E
#include<stdio.h>
void main()
{
char ch;
printf(“Enter a character\n”);
ch=getchar();
printf(“The entered character is \n”);
putchar(ch);
}
(i)simple if:This is a one way selection statementwhich helps the programmer to execute or
skip certain block of statements based on the particular condition.
Syntax:
if(conditional_expression)
{
True block statements;
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
Flowchart:
# include<stdio.h>
void main()
{
int age;
printf(“ Enter the age of the person\n”);
scanf(“%d”,&age);
if(age>=18)
{
printf(“The person is eligible to vote\n”);
}
if(age<18)
{
printf(“The person is not eligible to vote\n”);
}
}
(ii) if-elsestatement:Thisisatwowayselectionstatementwhichexecutestrueblockorfalse
block of statements based on the given condition. The keyword “else” is used to shift the
control when the condition is evaluated to false.
yntax:
S
if(conditional_expression)
{
True block statements;
}
else
{
False block statements;
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
Flow chart:
# include<stdio.h>
void main()
{
int num;
printf(“Enter a number\n”);
scanf(“%d”,&num);
if(num%2==0)
{
printf(“%d is a even number\n”,num);
}
else
{
printf(“%d is a odd number\n”,num);
}
}
(iii) NestedifStatement:Anifstatementwithinanotherifstatementiscalledasanestedif
statement.Thishelpstheprogrammertoselectoneamongmanyalternativesbasedonagiven
condition.
Syntax:
if(conditional_expression1)
{
if(conditional_expression2)
{
statement1;
}
else
{
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
statement2;
}
}
else
{
statement 3;
}
statement X;
Flow chart:
(iv) Cascadedif-elseorelseifladder:Thisisanotherwayofputtingallif’stogatherwhen
multipathdecisionareinvolvedThemultipathdecisionisachainofifstatementinwhichthe
statement associated with each elseisaifstatement.Heretheconditionsareevaluatedfrom
top to bottom. As soon asthe true condition is found the statement associated with it is
executed and the control is transferred to statement X, skipping rest of the ladder.
Syntax:
if(condition 1)
statement 1;
else if(condition 2)
statement 2;
else if(condition 3)
statement 3;
Flowchart:
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
xample: /* C program to display the grade of the student based on the average marks
E
obtained */
#include<stdio.h>
void main()
{
float avg;
printf(“Enter the Average marks\n”);
scanf(“%f”,&avg);
if(avg>=80)
printf(“Distinction\n”);
else if(avg>=60)
printf(“First Division\n”);
else if(avg>=50)
printf(“Second Division\n”);
else if(avg>=40)
printf(“Third Division\n”);
else
printf(“Fail\n”);
}
Syntax:
s witch( expression )
{
case value-1: Statement-1;
break;
case value-2: Statement-2;
break;
case value-3: Statement-3;
break;
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
}
Statement-x;
Flowchart:
xample: /* C program to find Area of various geometric
E
figures*/#include<stdio.h>
void main()
{
float a,b,area;
int choice;
printf(“\n MENU\n”)
printf(“1. Square\t 2. Circle\t 3. Rectangle\t 4. Triangle\n”);
printf(“Enter your Choice as 1 OR 2 OR 3 OR 4\n”);
scanf(“%d”,&choice);
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
s witch(choice)
{
case 1: printf(“\nSQUARE\n”);
printf(“Enter the Side\n”);
s canf(“%d”,&a);
area=a*a;
break;
case 2: printf(“\nCIRCLE\n”);
printf(“Enter the Radius\n”);
scanf(“%d”,&a);
area=3.142*a*a;
break;
case 3: printf(“\nRECTANGLE\n”);
printf(“Enter the length and breadth\n”);
scanf(“%d%d”,&a,&b);
area=a*b;
break;
case 4: printf(“\nTRIANGLE\n”);
printf(“Enter the base and height\n”);
scanf(“%d%d”,&a,&b);
area=0.5*a*b;
break;
default: printf(“you have entered a wrong choice\n”);
exit(0);
}
Printf(“Area=%f\n”,area);
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
Syntax:
initialization;
while(test condition)
{
set of statements to be executed
including increment/decrement opetator
}
Flow chart:
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
the body is executed, then it checks the condition.Iftheconditionistrue,thenitwillagain
executethebodyofaloopotherwisecontrolistransferredoutoftheloop.Similartothewhile
loop,oncethecontrolgoesoutoftheloopthestatementswhichareimmediatelyaftertheloop
is executed.
Syntax:
initialization;
do
{
set of statements to be executed
including increment/decrement opetator
}while(test condition);
Flowchart:
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
Difference between while loop and do-while loop
While loop Do while loop
Syntax Syntax:
initialization; initialization;
while(test condition) do
{ {
set of statements to be executed set of statements to be executed
including increment/decrement including increment/decrement
opetator opetator
} }while(test condition);
# include<stdio.h> include<stdio.h>
#
void main() void main()
{ {
int i; int i;
i=1; i=1;
while(i<=5) do
{ {
printf(“%d\t “,i); printf(“%d\t “,i);
i++; i++;
} } while(i<=5);
} }
(iii)for loop :A for loop is a more efficient loopstructure in 'C' programming which is used
when the loop has to be traversed for a fixed number of times. The for loop basically works on
three major aspects(i)The initial value of the for loop is performed only once.(ii)The
condition is a Boolean expression that tests and compares the counter to a fixed value after
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
each iteration, stopping the for loop when false is returned.(iii)The incrementation
/decrementation increases (or decreases) the counter by a set value.
Syntax:
f or (initial value; condition; incrementation or decrementation )
{
statements;
}
Flowchart:
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
Syntax:
for ( initialization; condition; increment )
{
for ( initialization; condition; increment )
{
statement of inner loop
}
statement of outer loop
}
Flowchart:
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
*
* *
* * *
* * * *
# include <stdio.h>
void main()
{
int i,j;
for(i=1;i<=4;i++)
{
for(j=1;j<=i;j++)
{
printf(“ * ”);
}
printf("\n");
}
}
1
2 3
4 5 6
7 8 9 10
# include <stdio.h>
void main()
{
int i, j, n=1;
for(i=1;i<=4;i++)
{
for(j=1;j<=i;j++)
{
printf("%d\t",n);
n++;
}
printf("\n");
}
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
1. Write a C program to find factorial of a given number using while loop.
# include<stdio.h>
void main()
{
int n,i,fact=1;
printf(“Enter a Number\n”);
scanf(“%d”,&n);
i=1;
while(i<=n)
{
fact=fact*i;
i=i+1;
}
printf(“Factorial of a given number = %d\n”,fact);
}
2. Write a C program to print even numbers in the range of 1 to10 using while loop.
# include<stdio.h>
void main()
{
int i=1;
while(i<=10)
{
if(i%2==0)
printf(“%d\t”,i);
i=i+1;
}
}
3. Write a C program to print sum of first n natural numbers using do-while loop
# include<stdio.h>
void main()
{
int n,i sum;
printf(“Enter the number of elements\n”);
scanf(“%d”,&n);
sum=0;
do
{
sum=sum+i;
i++;
}while(i<=n);
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
4. Write a C program to print multiplication table of a given number using do-while
loop
# include<stdio.h>
void main()
{
int n,i,p;
printf(“Enter a number\n”);
scanf(“%d”,&n);
i=1;
do
{
p=n*i;
printf(“%d X %d = %d\n”,n,i,p);
i=i+1;
}while(i<=10);
}
5. Write a C program to print sum of first n natural numbers using for loop
#include<stdio.h>
v oid main()
{
int n,i sum=0;
printf(“Enter the value of n\n”);
scanf(“%d”,&n);
for(i=1;i<=n;i++)
{
sum=sum+i;
}
printf(“Sum of natural numbers=%d\n”,sum);
}
6. Write a C program to print sum of all odd numbers and even numbers up to a given
range n using for loop
# include<stdio.h>
void main()
{
int n,i,osum=0,esum=0;
printf(“Enter the value of n\n”);
scanf(“%d”,&n);
for(i=1;i<=n;i++)
{
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
if(i%2==0)
esum=esum+i;
else
osum=osum+i;
}
printf(“The sum of even numbers=%d\n”,esum);
printf(“The sum of odd numbers=%d\n”,osum);
}
7. Write a C program to print fibonacci series up to n numbers using for loop
# include<stdio.h>
void main()
{
int n,i,fib1,fib2,fib3=0;
printf("Enter the number of series to to be genetared:");
scanf("%d",&n);
fib1=0;
fib2=1;
if(n==1)
printf("%d\n",fib1);
else if(n==2)
printf("%d\n%d\n",fib1,fib2);
else
p rintf("%d\n%d\n",fib1,fib2);
for(i=3;i<=n;i++)
{
fib3=fib1+fib2;
printf("%d\n",fib3);
fib1=fib2;
fib2=fib3;
}
}
1
1 2
1 2 3
1 2 3 4
# include <stdio.h>
void main()
{
int i,j;
for(i=1;i<=4;i++)
{
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
f or(j=1;j<=i;j++)
{
printf(“ %d ”,j);
}
printf("\n");
}
}
(i) breakStatement:Abreakstatementterminatestheexecutionoftheloopandthecontrol
is transferred to the statement immediately following the loop. i.e., the break statement is
used to terminate loops or to exit from a switch.
Syntax :
Jump-statement;
break;
Example:
# include<stdio.h>
void main()
{
int i=0;
while(i<=5)
{
i++;
if(i==3)
break;
printf(“%d\t”,i);
}
}
OUTPUT:
1 2
(ii) continue statement: The continue statement is used to bypass the remainder of the
current pass through a loop. The loop does not terminate when a continue statement is
encountered. Instead, the remaining loop statements are skipped and the computation
proceeds directly to
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
the next pass through the loop. It is simply written as “continue”. The continue statement tells
the compiler “Skip the following Statements and continue with the next Iteration”.
Syntax :
Jump-statement;
Continue;
Example:
# include<stdio.h>
void main()
{
int i=0;
while(i<=5)
{
i++;
if(i==3)
c ontinue;
printf(“%d\t”,i);
}
}
OUTPUT:
1 2 4 5
(iii)goto statement : C supports the “goto” statement to branch unconditionally from one
point toanotherintheprogram.Althoughitmaynotbeessentialtousethe“goto”statement
in a highly structured language like “C”, there may be occasions when the use of goto is
necessary. The goto requires a labelinordertoidentifytheplacewherethebranchistobe
made. A label isanyvalidvariablenameandmustbefollowedbyacolon(:).Thelabelis
placedimmediately beforethestatementwherethecontrolistobetransferred.Thelabelcan
be anywhere in the program either before or after the goto label statement.
orward jumpgoto
F ackward jumplabel:
B
yntax :goto label;
S label; statement;
............. ............. .............
............. ............. .............
............. ............. .............
label: label: goto label;
statement; statement;
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
If the label statement is below the goto statement then it is calledforward jump. if the label
statement is above the goto statement then it is calledbackward jump
Example:
rogram without using gotoProgram using goto
P
#include<stdio.h> void main()
void main() {
{ printf(“MITE \t”);
printf(“MITE \t”); goto label1;
printf(“is \t in\t”); printf(“is \t in\t”);
printf(“Moodbidri\n”) label1:
; } printf(“Moodbidri\n”); }
OUTPUT OUTPUT
MITE is in Moodbidri M
ITE Moodbidri
#include<stdio.h>
Write a C Program to check if the entered number is positive Negative or Zero using
goto statement.
# include<stdio.h>
#include<stdlib.h>
void main()
{
int num;
printf(“Enter the number\n”);
scanf(“%d”,&num);
if(num==0)
goto zero;
else if(num>0)
goto pos;
else
goto neg;
zero: printf(“The entered number is Zero\n”);
exit(0);
pos: printf(“The entered number is Positive\n”);
exit(0);
neg: printf(“The entered number is Negative\n”);
exit(0);
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
immediately following the call. Areturnstatementcan also return a value to the calling
function.
Syntax :
J ump-statement:
return expression;
Outcome1: if the value of b2- 4ac is equal to zerothen we say the “Roots are Real and Equal”
−��
The formula to calculate the real and equal root is�� =
2
�
�
Outcome2: if the value of b2- 4ac is grater than zeroi.e if the discriminant value is positive
we say the “Roots are real and distinct” the formula to calculate real and distinct roots are
�� =−��±√��2−
4����
Outcome3: if the value of b2- 4ac is lesser than zeroi.e if the discriminant value is negative
we say that the “ Roots are imaginary ” the formula to calculate imaginary roots are
�� =−��±��√��2−4����
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
# include<stdio.h>
#include<stdlib.h>
#include<math.h>
v oid main()
{
float a,b,c,x1,x2,disc;
printf("Enter the values of a,b,c\n");
scanf("%f%f%f",&a,&b,&c);
if(a==0)
{
printf("Invalid Input\n");
exit(0);
}
disc=b*b-4*a*c;
if(disc>0)
{
printf("Roots are Real and Distinct\n");
x1=((-b)+sqrt(disc))/(2*a);
x2=((-b)-sqrt(disc))/(2*a);
printf("Root1= %f\n Root2= %f\n",x1,x2);
}
else if(disc==0)
{
printf("Roots are Real and Equal\n ");
x1=(-b)/(2*a);
printf("Root1=Root2=%f\n",x1);
}
else
{
printf("Roots are Imaginary\n");
x1=(-b)/(2*a);
x2=(sqrt(fabs(disc)))/(2*a);
printf("Root1= %f +i %f\n",x1,x2);
printf("Root2= %f -i %f\n",x1,x2);
}
}
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
binomial Coefficient table is required to determine the binomial coefficient of any set of m
A
and x
Analysis :-The binomial coefficient can be recursivelycalculated as follows
B(m,0) = 1
Further, B(0,0) = 1
��(��, ��) =
�� − �� + 1
��(��, �� − 1) = [ ] , �� =
1,2,3, … . . , �� ��
rintf(“%2d”,m);
p
x=0;
i.e. The binomial coefficient is 1 when binom=1;
either x is 0 or m is 0 while(x<=m)
{
if(m==0||x==0)
/*C Program to print the table of printf(“%4d”,binom);
binomial coefficients*/
# include<stdio.h>
# define MAX 10
void main()
{
int m,x,binom;
printf(“mx”);
for(m=0;m<=10;m++)
printf(“%4d”,m)
printf(“\n
m=0;
do
{ \n”);
}
x=x+1;
else {
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
b
i
n
o
m
=
b
i
n
o
m
*
(
m
-
x
+
1
)
/
x
;
p
r
i
n
t
f
(
“
%
4
d
”
,
b
i
n
o
m
)
;
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C
}
printf(“\n”);
m=m+1;
}while(m<=MAX);
}
mx0 1 2 3 4 5 6 7 8 9 10
01
11 1
21 2 1
31 3 3 1
41 4 6 4 1
51 5 10 10 5 1
61 6 15 20 15 6 1
71 7 21 35 35 21 7 1
81 8 28 56 70 56 28 8 1
TI – Department of AIML
B
BPOPS203-PRINCIPLES OF PROGRAMMING USING C