UNIT II C PROGRAMMING BASICS

Post on 18-Jan-2016

29 views 0 download

description

UNIT II C PROGRAMMING BASICS - PowerPoint PPT Presentation

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