UNIT II C PROGRAMMING BASICS
description
Transcript of UNIT II C PROGRAMMING BASICS
UNIT II C PROGRAMMING BASICS
Problem formulation – Problem Solving - Introduction to ‘ C’
programming –fundamentals – structure of a ‘C’ program – compilation
and linking processes – Constants, Variables – Data Types – Expressions
using operators in ‘C’ – Managing Input and Output operations –
Decision Making and Branching – Looping statements – solving simple
scientific and statistical problems.
Problem formulation
•Effective problem formulation is fundamental to the success of all analysis,
but particularly in Command and Control assessment because the problems are
often ill-defined and complex, involving many dimensions and a rich context.
•Problem formulation involves decomposition of the analytic problem into
appropriate dimensions such as structures, functions, mission areas.
•Problem formulation is an iterative process that evolves over the course of
the study.
•It is essential even for small studies or where time is short; it will
save time later and help ensure quality.
•The problem formulation phase should identify the context of the
study and aspects of the problem related issues.
•There is no universally acceptable approach to problem
formulation. However, best practices exist that can be applied.
•First find out what the question is then find out what the real
question is.
PROBLEM SOLVING
•When we starts reading these and wants to learn how to solve problem by
using a computer, it is first of all important to understand what the problem
is.
•We need to read the problem statement a number of times to ensure that
it understands what is asked before attempting to solve the problem.
Method of Problem Solving
1. Recognize and understand the problem.
2. Accumulate facts.
3. Select appropriate theory.
4. Make necessary assumptions.
5. Solve the problem.
6. Verify results.
•Performing step 5 Solve the problem may involve a computer.
•The 5 steps in using a computer as a problem-solving tool
1. Develop an Algorithm and a Flowchart.
2. Write the program in a computer language.
3. Enter the program into the computer.
4. Test and' debug the program.
5. Run the program, input data, and get the results from the computer
Introduction to ‘ C’ programming
•C was developed by Dennis Ritchie at Bell laboratory in 1972
•It is an upgrade version of languages B and BCPL.
Features of C
•It is a structured programming language.
•It is highly portable.
•It is a middle level language.
•It is a case sensitive language.
•It uses Top-Down approach.
•It is a Free form language.etc,.
Steps in learning C
CharacterSet
ProgramsInstructionsTokens
C Character Set
C Character Set
Execution Character Set
Source Character Set
SpecialCharacters
DigitsAlphabets EscapeSequence
WhiteSpaces
C Character Set (Cont)
Source Character Set
It is used to construct the statements in the program.
Executable Character Set
These characters are employed at the time of execution i.e. they
have effects only when the program is being executed.
Source Character SetLetters a to z ,A to Z
Digits 0 to 9
Special Characters ! @ # $ % ^ & * ( ) _ - + = \ | { } [ ] etc,.
White Spaces Blank Space ,Horizontal tab, New line, Vertical tab etc,.
Special charactersComma , Period or dot .Semicolon ;Colon :Apostrophe ‘Quotation mark “Exclamation mark !Vertical bar | Back Slash \Tilde ~Underscore -Dollar $Question mark ?
Ampersand &Caret ^Asterisk *Minus -Addition +Lesser than <Greater than >Parenthesis ()Bracket []Braces {}Percentage %Hash #Equal to =At the rate @
Executable Character Set
Characters Escape Sequence
Back Space \b
Horizontal Space \t
Vertical Space \v
Newline \n
C Tokens
The smallest element in the C language is the token.
It may be a single character or a sequence of characters.
C Tokens (Cont)
C Tokens
Identifiers
Eg:main,avg
Keywords
Eg: int,for
operators
Eg: + -
Strings
Eg: “ab”
spIsymbolEg: #$ %
Constants
Eg:17,15.5
Executing a C ProgramCreating the Program
Compilation
Linking
Execution
Executing a C Program (Cont)
Enter the program in a C editor.
Save the program (File Save) or F2. Use the extension .c for saving
the file.
Eg: sample.c
Compile the program(Compile Compile) or Alt+F9.
Run the program(Run Run) or Ctrl+F9.
Executing C program using UNIX
Enter the program in vi editor.
Save the file using :wq
Use the extension .c for saving the file.
Eg: sample.c
Compile the program.
Eg: cc sample.c (or) gcc sample.c
Run the program using a.out.
Structure of C programDOCUMENTATION SECTION
PREPROCESSOR SECTION
DEFINITION SECTION
GLOBAL DECLARATION SECTION
main() {
Declaration part;Executable Part;
} sub program section {
Body of the subprogram; }
Documentation Section
It contains the comment lines.
Preprocessor Section
It is used to link library files.
Global Declaration Section
The Global declaration section comes at the beginning of the
program and they are visible to all parts of the program.
Declaration Section
It describes the data to be used within the function.
Executable Part
It contains the valid statements.
C Programs
· C program may have many functions.
· One and only one of the functions MUST BE named main.
· main is the starting point for the program.
· main and other functions in a program are divided into two
sections, declaration section and statement section.
Preprocessor Directives
Special instructions to the preprocessor that tells how to prepare the
program for compilation
E.g: include : tells the processor to include information from
selected libraries known as header files e.g. <stdio.h>
Comments (Program documentation)
The compiler simply ignores comments when it translates the
program into executable code.
To identify a comments, C uses opening /* and closing */
comment tokens.
Comments (Cont)
Comments can appear anywhere in a program.
Comments are also found wherever it is necessary to explain a point
about a code.
Comments cannot be nested in C i.e. you cannot have comments
inside comments.
C program/* Example program in C*/ Comments
# include <stdio.h> Preprocessor Section
Global Declaration
void main ()
{ Local declaration
printf (“Hello World! \n”); Statements
}
Output :
Hello World
C Tokens
Identifiers
Keywords
Constants
Operators
Special symbols
Identifiers
Identifiers are names given to various program elements such as
variables, functions and arrays etc,.
Eg: #define N 10
#define a 15
Here N and a are user defined identifiers.
Rules for naming identifier
First character must be alphabetic or underscore.
Must consist only of alphabetic characters, digits, or underscores.
Only the first 31 characters of an identifier are significant and are
recognized by the compiler.
Cannot use a keywords or reserved word (e.g. main, include, printf &
scanf etc.).
No space are allowed between the identifiers etc,.
C is case sensitive, e.g. My_name my_name.
Examples of Valid and Invalid Names
Valid Names Invalid Names
a a1 $sum /* $ is illegal */
student_name stdntNm 2names /* Starts with 2 */
_aSystemName _anthrSysNm stdnt Nmbr /* no spaces */
TRUE FALSE int /* reserved word */
Variables
Variable is an identifier that is used to represent some specified type
of information.
Eg: x=3
Here x is variable.
Keywords
reserved words.
Cannot be used for anything else.
Examples:
int
while
for etc,.
KeywordsAuto register ContinueDouble typedef ForInt Char signedStruct extern void Break return Default Else union GotoLong Const sizeof Switch Float doCase short IfEnum unsignedStatic While
ConstantsIt is an entity whose value does not changes during the execution.
Eg: x=3
Here 3 is a constant.
Types
Numeric constants
Character constant
Constants
Constants
Character Constants Numeric Constants
RealConstant
IntegerConstant
String Constant
SingleCharacter Constant
Numeric constantsInteger constants
It is formed using a sequence of digits.
Decimal - 0 to 9 .
Octal - 0 to 7.
Hexa - 0 to 9 ,A to F
Eg: 10,75 etc.
Rules for defining Integer Constant
It must have at least one digit.
Decimal point are not allowed.
No blank space or commas are allowed.
It can be either positive or negative. Etc,.
Numeric constants
Real constants
It is formed using a sequence of digits but it contain decimal point.
length, height, price distance measured in real number
Eg: 2.5, 5.11, etc.
Character constants
Single character constant
A character constant is a single character they also represented
with single digit or a single special symbol which is enclosed in
single quotes.
Eg: ‘a’, ‘8’,’_’etc.
Character constants
String constants
String constant are sequence of characters enclosed with in double
quote.
Eg: “Hello” ,”444”,”a” etc,.
Operators
An operator is a symbol that specifies an operation to be performed
on the operands.
Eg: a + b
+ is an operator.
a,b are operands.
Data Types
· A Data type is the type of data that are going to access within the
program.
Standard Data Types
•These Standard type can be used to build more complex data types
called Derived Types (e.g. pointers, array, union etc.).
Data types
Data type Size(bytes) Range Format string
Char 1 -128 to 127 %c
int 2 -32,768 to 32,767 %d
Float 4 3.4 e-38 to 3.4 e+38 %f
Double 8 1.7 e-308 to 1.7 e+308 %lf
integer
A number without a fraction part : integral number.
C supports three different sizes of the integer data type :
short int
int
long int
Floating Point
A floating-point type is a number with a fractional part, e.g. 56.78
Floating point numbers are stored using
4 Byte.
Types
Float
Double
long double
character
Character are generally stored using 8 bits(1 Byte) of the internal
storage.
Character ASCII code value
a 97(decimal) or 01100001(binary)
x 120(decimal) or 01111000(binary)
void The void type has no values and no operations.
Both the set of values and the set of operations are empty.
Variable’s Declaration
To create a variable, you must specify the type and then its
identifier :
float price;
int a,b;
char code;
Entire Data types in c:
Data type Size(bytes) Range Format string
Char 1 128 to 127 %c
Unsigned char 1 0 to 255 %c
Short or int 2 -32,768 to 32,767 %i or %d
Unsigned int 2 0 to 65535 %u
Long 4 -2147483648 to 2147483647 %ld
Unsigned long 4 0 to 4294967295 %lu
Float 4 3.4 e-38 to 3.4 e+38 %f or %g
Double 8 1.7 e-308 to 1.7 e+308 %lf
Long Double 10 3.4 e-4932 to 1.1 e+4932 %lf
Types of Operator
Arithmetic operator
Relational operator
Logical operator
Assignment operator
Increment or decrement operator(unary)
Bitwise operator
Conditional operator
Arithmetic operator
It is used to carry out arithmetic operations like addition,
subtraction etc,
Eg: + , - , * , / etc,
Sample program#include<stdio.h> // Header File
#include <conio.h>
int b=10; //Global Declaration
void main ( ) /* main is the starting of every c program */
{
int a,c; //Local Declaration
clrscr( );
scanf(“%d”,&a);
printf(“ \n The sum of the two values:”);
c = a+b;
printf(“%d”,c);
getch( );
}
Division operator on Different Data Type
Operation Result Exampleint/int int 5/2 = 2int/real real 5/2.0 = 2.5real/int real 5.0/2 = 2.5
real/real real 5.0/2.0 = 2.5
Sample program
#include<stdio.h>#include <conio.h>void main ( ){int a=10,b=4,c;float d=3,e;clrscr( );c = a/b;printf(" \n value a/b is:%d",c);e = a/d;printf("\n value a/d is:%f",e);getch( );}
Output
value a/b is:2
value a/d is:3.333333
Relational operator
It is used to compare two or more operands.
Eg :< , > , <= , >=, != etc,.
5 < 9 which will return 1
Logical operator
It is used to combine the result of two or more condition.
AND(&&)
OR (||)
NOT (!) are Logical operators.
Eg: (i>10)&&(j>5).
(i>10)||(j>5) etc,.
Sample program#include<stdio.h>
#include <conio.h>
void main ( ){
int a=10,b=3,c=5,e;
clrscr( );
if(a>b) // relational operator
{
printf(" \n a is bigger than b");
}
if((a>b)&&(a>c)) //Logical operator
{
printf(" \n a is biggest");
}
getch( );
}
Output
a is bigger than b
a is biggest
Assignment operator
It is used to assign a value or expression etc to a variable.
Eg: a =10.
a = b
a = b + c etc,.
Assignment operator(Cont)
Compound operator
It is also used to assign a value to a variable.
Eg: x + = y means x = x + y
Nested operator
It is used for multiple assignment.
Eg: i = j = k = 0;
Sample program#include<stdio.h>
#include <conio.h>
int b=10;
void main ( )
{
int a=3,b=5;
clrscr( );
a+=b; // a= a+b
printf(" \n The sum of the two values:%d",a);
getch( );
}
Output
The sum of the two values:8
Increment or decrement operator(Unary)
It is used to Increment or decrement an operand.
Eg: ++x (Pre Increment),
x++ (Post Increment),
--x (Pre Decrement),
x-- (Post Decrement).
Sample Program
#include<stdio.h>
#include <conio.h>
void main ( )
{
int a=5;
clrscr( );
printf(" \n Post increment Value:%d",a++);
printf(" \n Pre increment Value:%d",++a);
printf(" \n Pre decrement Value:%d",--a);
printf(" \n Post decrement Value:%d",a--);
getch( );
}
Output
Post increment Value:5
Pre increment Value:7
Pre decrement Value:6
Post decrement Value:6
Bitwise operator
It is used to manipulate data at bit level.
Eg: a=5 i.e 0000 0101
b=4 i.e 0000 0100
Then a & b = 0000 0100
a | b = 0000 0101 etc,.
Sample program
#include<stdio.h>
#include <conio.h>
void main ( )
{
int a=5,b=4,c;
//char a=5,b=4,c;
clrscr( );
c = a&b;
printf(" \n value a&b is:%d",c);
getch( );
}
Output
value a&b is:4
Conditional Operator (or) Ternary Operator
It is used to checks the condition and execute the statement
depending on the condition.
Eg: C = a > b ? a:b
Sample Program
#include<stdio.h>
#include <conio.h>
void main ( )
{
int a=5,b=8,c;
clrscr( );
c = a>b?a:b; //Conditional operator
printf(" \n The Larger Value is%d",c);
getch( );
}
Output
The Larger Value is 8
Special Operatorcomma operator ( , )sizeof operatorpointer operator (& , *) etc,.
#include<stdio.h>
#include <conio.h>
void main ( )
{
int c;
clrscr( );
printf(" \n size of int is:%d",sizeof c);
getch( );
}
Output
size of int is: 2
Expression
An expression represent data item such as variable, constant are
interconnected using operators.
Eg:
Expression C Expression
a + b + c a + b + c
a2+b2 a*a + b*b
Operator Precedence & Associativity
The arithmetic expressions evaluation are carried out based on the
precedence and associativity.
The evaluation are carried in two phases.
First Phase: High Priority operators are
evaluated.
Second Phase: Low Priority operators are
evaluated.
Precedence Operator
High * , / , %
Low + , -
Example5 - 20/4 + 3*3 – 1 = 5 - 5 + 9 – 1 = 0 + 9 – 1 = 9 – 1 = 8
Example5 – (20/4) + 3*(3 – 1)
= 5 - 5 + 3*2
= 5 - 5 + 6
= 6
Type Conversion
Converting the type of an expression from one type to another type.
Eg: x = (int)10.45
Sample Program
#include<stdio.h>
#include <conio.h>
void main ( )
{
int c;
clrscr( );
c=(int)10.45;
printf("\nOutput is:%d",c);
getch( );
}
Output is:10
Input/output Function
Input/Output Function
Unformatted Formatted
Output
printf()fprintf()
Input
scanf()fscanf()
Input
getc()gets()
getchar()
Output
putc()puts()
putchar()
Formatted Input/output
C uses two functions for formatted input and output.
Formatted input : reads formatted data from the keyboard.
Formatted output : writes formatted data to the monitor.
Formatted Input and Output
Standard Output
The standard output file is the monitor.
Like the keyboard, it is a text file.
When you need to display data that is not text, it must be
converted into to the text before it is written to the screen.
Format of printf Statement
Formatted Input (scanf)
• The standard formatted input function in C is scanf (scan formatted).
• scanf consists of : a format string . an address list that identifies where data are to be placed in
memory.
scanf ( format string, address list );
(“%c….%d…..%f…..”, &a,….&i,…..,&x…..)
Format of scanf Statement
getchar() Example#include<stdio.h>
#include<conio.h>
#include<ctype.h>
void main()
{
char x;
printf("enter the character:");
x=getchar();
if(islower(x))
putchar(toupper(x));
else
putchar(tolower(x));
getch();
}
Output:
enter the character:ABC
a
getche() Example
#include <stdio.h>
#include <conio.h>
void main()
{
char c ;
clrscr();
printf("\nInput a string:");
c = getche();
printf("\nstring is:");
putch(c);
getch();
}
Output:
Input a string:k
string is:k
Getch() Example#include <stdio.h>
#include <conio.h>
void main()
{
char c;
clrscr();
printf("\nInput a string:");
c = getch();
printf("\nstring is:");
putch(c);
getch();
}
Output:
Input a string:
string is:h
getc Example
#include<stdio.h>
#include<conio.h>
#include<ctype.h>
void main()
{
char x;
printf("enter the character:");
x=getc(stdin);
if(islower(x))
putc(toupper(x),stdout);
else
putc(tolower(x),stdout);
getch();
}
Output:
enter the character:abc
A
gets() Example#include <stdio.h>
#include<conio.h>
void main()
{
char c[80];
clrscr();
printf("Input a string:");
gets(c);
printf("The string is:");
puts(c);
getch();
}
Output:
Input a string:qwerty
The string is:qwerty
Character Test Function
It is used to test the character taken from the input.
isalpha(ch)
isdigit(ch)
islower(ch)
isupper(ch)
tolower(ch)
toupper(ch) etc,.
Decision Making
It is used to change the order of the program based on condition.
Categories:
Sequential structure
Selection structure
Iteration structure
Encapsulation structure
Decision Making (cont)Sequential structure
In which instructions are executed in sequence.
Selection structure
In which instruction are executed based on the result of some
condition.
Iteration structure
In which instruction are executed repeatedly.
Encapsulation structure
In which some compound structure are used.
SELECTION STRUCTURE
It allows the program to make a choice from alternative paths.
C provide the following selection structures
IF statement
IF … ELSE statement
Nested IF … ELSE statement
IF … ELSE ladder
IF StatementSyntax
IF (condition is true)
{
Statements;
}
If condition
False
True
Statements
Example
#include<stdio.h>#include <conio.h>void main ( ){int a;clrscr( );printf("\nEnter the number:");scanf("%d",&a);
if(a>10){
printf(" \n a is greater than 10");}
getch( );}
Output
Enter the number: 12
a is greater than 10
IF…ELSE Statement
SyntaxIF (condition) {
True statements;}ELSE{
False statements;}
If Condition
True False
True statements
False statements
#include<stdio.h>#include <conio.h>void main ( ){int a;clrscr( );printf("\nEnter the number:");scanf("%d",&a);
if(a>10){
printf(" \n a is greater than 10");}
else{
printf(" \n a is less than 10");}
getch( );}
NESTED IF… ELSE
If Condition
2
True False
True statements
False statements
IfCondition
1False
StatementsTrue
NESTED IF… ELSESyntaxIF (condition1) {
IF (condition2) {
True statements;}ELSE{
False statements;}
}ELSE{
False statements;}
IF…ELSE LADDER
Condition1
Statements
Condition2
Statements
Condition3
Statements Statements
TRUE
TRUE
TRUE
FALSE
FALSE
FALSE
IF…ELSE LADDERSyntaxIF (condition1) {statements;}
else if (condition2) {statements;}
else if (condition3){statements;}
else{statements;}
Example#include<stdio.h>#include<conio.h>void main(){ int m1,m2,m3; float avg; printf("\nEnter the marks:"); scanf("%d%d%d",&m1,&m2,&m3); avg=(m1+m2+m3)/3; printf("\n The average is:%f",avg); printf("\n The Grade is:"); if(avg>=60) {
printf("First class"); }
else if(avg>=50) {
printf("Second class"); } else if(avg>=35) {
printf("Thrid class"); } else {
printf("Fail"); }
getch();}
OutputEnter the marks:65
75
70
The average is:70.000000
The Grade is: First class
Looping
It is used to execute some instructions several time based on
some condition.
WHILE
Do…WHILE
For
WHILE Loop Syntax
.
WHILE (condition){
.Body of the loop;
. }
Body of The loop
conditionFalse
True
Example#include<stdio.h>#include<conio.h>void main(){ int i=1,fact=1,n; printf("\nEnter the Number:"); scanf("%d",&n); while(i<=n) {
fact =fact *i; i++; // i=i+1
} printf("\n The value of %d! is:%d",n,fact); getch();}
Output
Enter the Number:3
The value of 3! is: 6
DO…WHILE Loop Syntaxdo
{
Body of the loop
}while (condition);
Body of The loop
condition
False
True
for loop Syntaxfor (initialization; test condition;
Increment/Decrement){
Body of the loop
}
for loop
Initialization
condition False
Body of the loop
Inc / Decrement
Example#include<stdio.h>#include<conio.h>void main(){ int i,fact=1,n; printf("\nEnter the Number:"); scanf("%d",&n); for(i=1;i<=n;i++) {
fact =fact *i; } printf("\n The value of %d! is:%d",n,fact); getch();}
OutputEnter the Number:3
The value of 3! is: 6
Nested for loop Syntaxfor (initi; cond; Inc/Dec)
{
for (initi; cond; Inc/Dec){
Body of the loop
}
}
CASE structure
Case 1
Case 2
Defaultcase
Switch
CASE structure
Syntaxswitch (expression){case constant 1:
block1;break;
case constant 2:block2;break;..
default :default block;break;
}
Example#include<stdio.h>#include<conio.h>void main(){ int i,n; printf("\nEnter the Number:"); scanf("%d",&n);
switch(n) {
case 1:{printf("\n Its in case 1");break;}
case 2:{printf("\n Its in case 2");break;}
default:{printf("\n Its in default");break;}
} getch();}
OutputEnter the Number:2
Its in case 2
break StatementIt is used to terminate the loop
When a break statement is encountered inside a loop, then the
loop is terminated.
Loops with break Statementwhile(cond)
{
…………
if(cond)
break;
…………
}
do{
…………if(cond)break;…………
} while(cond);
for (initi; condt; Inc/Dec){…………if(cond)break;…………
}
Continue StatementWhen a continue statement is encountered inside a loop, the
control is transferred to the beginning.
Loops with continue Statementwhile(cond)
{
…………
if(cond)
continue;
…………
}
do
{
…………
if(cond)
continue;
…………
} while(cond);
for (initi; condt; Inc/Dec)
{
…………
if(cond)
continue;
…………
}
goto StatementWhen a goto statement is encountered inside a loop, the control is
transferred to the beginning.
Syntax for goto Statementlabel:
…………
…………
…………
goto label;
…………
goto label;
…………
…………
…………
label:
…………
Example
#include<stdio.h> #include<conio.h> void main() {
int a,b,c,n;clrscr();printf("\nEnter the value of a,b:");scanf("%d%d",&a,&b);printf("\nMENU");printf("\n1.ADD\n2.SUB\n3.MULTIPLY\n0.EXIT");printf("\nEnter the choice:");scanf("%d",&n);
switch(n){ case 1:
c=a+b;printf("\nThe result of Addition is:%d",c);break;
case 2:c=a-b;printf("\nThe result of Subtraction is:%d",c);break;
case 3:c=a*b;printf("\nThe result of Multiplication is:%d",c);break;
case 0:exit(0);break;
}getch();
}
OutputEnter the value of a,b:56MENU1.ADD2.SUB3.MULTIPLY0.EXITEnter the choice:1The result of Addition is:11
Finding Armstrong No
#include<stdio.h>#include<conio.h>void main(){ int r=0,sum=0,n,a; printf("\nEnter the number:"); scanf("%d",&n); a=n;
while(n>0){
r=n%10;sum=sum+r*r*r;n=n/10;
}
if(a==sum){ printf("\nIt is an armstrong number");}else{ printf("\nIt is not an armstrong number");}
getch();}
Output
Enter the number:153
It is an armstrong number
Sum of the Digits
#include<stdio.h>#include<conio.h>void main(){ int r=0,sum=0,n; printf("\nEnter the no:"); scanf("%d",&n); while(n>0) { r=n%10;
sum=sum+r;
n=n/10;
}
printf("sum of the digits is:%d",sum);
}
Output
Enter the no:156
sum of the digits is:12
Reverse of a number#include<stdio.h>#include<conio.h>void main(){ int r=0,sum=0,n; printf("\nEnter the no:"); scanf("%d",&n); while(n>0)
{
r=n%10;
sum=sum*10+r;
n=n/10;
}
printf("Reverse of the number is:%d",sum);
getch();
}
Output
Enter the no:567
Reverse of the number is:765
Fibonacci Series#include<stdio.h>
#include<conio.h>
void main()
{
int f=0,f1=-1,f2=1,n,i;
printf("\nEnter the number:");
scanf("%d",&n);while(f<n)
{ f=f1+f2;
f1=f2; f2=f;
printf("\t%d",f);}
getch();}
Output
Enter the number:5
0 1 1 2 3 5
Swapping #include<stdio.h>#include <conio.h>void main ( ){int a,b,c;clrscr( );printf(" \nEnter the value of a:");scanf("%d",&a);printf(" \nEnter the value of b:");scanf("%d",&b);c=a;a=b;b=c;printf(" \nThe value of a is:%d",a);printf(" \nThe value of b is:%d",b);getch( );}
Output:Enter the value of a:5Enter the value of b:4
The value of a is:4The value of b is:5
Swapping without using third variable
#include<stdio.h>#include <conio.h>void main ( ){int a,b;clrscr( );printf(" \nEnter the value of a:");scanf("%d",&a);printf(" \nEnter the value of b:");scanf("%d",&b);a=a+b;b=a-b;a=a-b;printf(" \nThe value of a is:%d",a);printf(" \nThe value of b is:%d",b);getch( );}
Output:Enter the value of a:5Enter the value of b:6
The value of a is:6The value of b is:5
Quadratic Equation
#include<stdio.h>#include <conio.h>#include<math.h>void main ( ){int a,b,c,d,r1,r2;clrscr( );printf(" \nEnter the value of a:");scanf("%d",&a);printf(" \nEnter the value of b:");scanf("%d",&b);printf(" \nEnter the value of c:");scanf("%d",&c);d=b*b-4*a*c;
if(d>=0){
r1=(-b+sqrt(d))/(2*a);r2=(-b-sqrt(d))/(2*a);
printf(" \nThe roots are %d,%d",r1,r2);}else{ printf(" \nThe roots are imaginary");}getch( );}
Output
Enter the value of a:4
Enter the value of b:5
Enter the value of c:6
The roots are imaginary