106
C Programming Class I

C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Embed Size (px)

Citation preview

Page 1: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C ProgrammingClass I

Page 2: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Introduction to CGeneration of ‘C’ Language1. In 1967, Martin Richards developed a language called BCPL

(Basic Combined Programming Language)2. In 1970, Ken Thompson created a language using many features

of BCPL and called it simply B.3. In 1972, ‘C’ is Introduced by Dennis Ritchie at Bell laboratories and

in the UNIX operating system.

Page 3: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

TYPES OF ‘C’ COMPILER

1. Borland ‘C’ Compiler

2. Turbo ‘C’ Compiler

3. Microsoft ‘C’ Compiler

4. ANSI ‘C’ Compiler

Why are using ‘C’• It is a Structured Programming Language• High – Level Language• Machine Independent Language• It allows software developers to develop programs

without worrying about the hardware platforms where they will be implemented

Page 4: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Steps in Learning C

Character set

Constants, variableAnd Data types

Control statements

Functions

Files

Structures and Unions

Pointers

Arrays

Data Structures

Algorithms

Programs

Page 5: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’S Program StructureDocumentation section

Preprocessor section

Definition section

Global declaration sectionmain() { Declaration part; Executable part;}

Sub program section{

Body of the subprogram}

Page 6: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Character setC Character set

Source Character set

Execution Character set

AlphabetsA to Z & a to z

Escape Sequences\a,\b,\t,\n

Digits0 to 9

Special Characters+,-,<,>,@,&,$,#,!

Page 7: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C TOKENS

C TOKENS

Keywords

Identifiers

Strings

Special Symbols

Constants

Operators

-15.5

100

Grant_total

Amount

a1

float

while

“ABC”

“YEAR”

+ - * /

[ ]

{ }

Page 8: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s keyword Basic Building Block of the Program This are the Reserved words This word’s cant be changed

C keywords

autobreakcasecharconstcontinuedefaultdo

doubleelseenumexternfloatforgotoif

intlongregisterreturnshortsignedsizeofstatic

structswitchtypedefunionunsignedvoidvolatilewhile

Page 9: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Variables

• A variable is a data name as well as identifier that may be used to store a data value.

Rules for Naming the Variablesa) A variable can be of any combination of alphabets, digits and

underscore.b) The first character of the variable can’t be digits.c) The length of the variable can’t be exceeded by 8.(ANSI C – 32

Character)d) No commas, blanks or special symbol are allowed within a variable

name.e) Uppercase and lowercase are significant. That is, the variable Total is

not the same as total or TOTAL.f) It should not be a keyword.g) White space is not allowed.

Page 10: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Variables cont.Variable Declaration

It tells the computer what the variable name and type of the data

Syntax data_type a1,a2,a3……..an;

Description data_type is the type of the data.a1,a2,a3……an are the list of variables

Example int number;char alpha;float price;

Page 11: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Variables cont.Initializing Variables

Initialization of variables can be done using assignment operator(=)

Syntax a1 = c1 ;(or) data_type a1 = c1;

Description a1 is the variablec1 is the constantdata_type is the type of the data

Example int a1 = 29;float f1 = 34.45;char c1 = ‘d’

Page 12: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s constant

C constant

Numeric constant

Character constant

Integer constanteg: roll_number = 12345;

Real constanteg: pi = 3.14;

Single Character constanteg: ch = ‘c’; ch = ‘3’;

String constanteg: name = “palani”

The item whose values can’t be changed during execution of program are called constants

Page 13: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s constant Conti…Integer constant

eg: roll_number = 12345;

Hexadecimal constantEg. 0x23

Octal constantEg. 043

Decimal ConstantEg. 35

Real Constanteg: pi = 3.14;

Double Precision ConstantSingle Precision Constant

Page 14: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Data Types This are the type of the data that are going to access within the

program.

C’s Data Type

Primary User defined Derived EmptyCharIntFloatDouble

typedefArraysPointersStructuresUnion

Void

Page 15: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Data types cont.

Integer

Signed

Unsigned

Int (%d)2 bytes,-32768 to 32767

Short int (%d)1 bytes, -128 to 127

Long int (%ld)4 bytes,

-2,147,483,648 to 2,147,483,647

Unsigned Int (%d)2 bytes, 0 TO 65, 535

Unsigned short int (%d)1 bytes, 0 TO 255

Unsigned Long int (%ld)4 bytes,

0 TO 4,294,967,295

The primary data types are further classified as below.Integers are the whole numbers, both positive and negative.

Page 16: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Data types cont.

Float Type

Float (%f )4 bytes, 3.4E -38 to 3.4E +38

Double (%lf)8 bytes, 1.7E -308 to 1.7E +308

Long Double (%lf)10 bytes, 3.4E -4932 to 1.1E+4932

Float are the numbers which contain fractional parts, both Positive and Negative.

Page 17: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’s Data types cont.

Character Type

Char (%c)1 byte, -128 to 127

Signed Char (%c)1 byte, -128 to 127

Unsigned Char (%c)1 byte, 0 to 255

Char are the characters which contain alpha-numeric character. Characters are usually stored in 8 bits (one byte) of internal storage

The void is the Null Data type.

Page 18: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’ Delimiters

Symbol Name Meaning# Hash Pre-processor directive

, comma Variable delimiters (to separate list of variables)

: colon Label delimiters

; Semi colon Statement delimiters

() parenthesis Used in expressions or in functions

{} Curly braces Used in blocking ‘C’ structure

[] Square braces Used along with arrays

Delimiters are the symbols, which has some syntactic meaning and has got significance.

Page 19: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

C’ Statements

Statements

Expression Statement Compound Statement Control Statement

Statement can be defined as set of declarations (or) sequence of actionAll statements in ‘C’ ends with semicolon(;) except condition and control statement

Page 20: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Expression Statement

1. An Expression is a combination of constant, variables, operators, and function calls written in any form as per the syntax of the C language.

2. The values evaluated in these expressions can be stored in variables and used as a part for evaluating larger expressions.

3. They are evaluated using an assignment statement of the form.

variable = expression;

4. For Example,

age = 21;

result = pow(2,2);

simple_interest = (p * n * r) / 100;

Algebraic Expression Equivalent C Expression

(mnp + qr – at) (m*n* p+q*r-s*t)

(a+b+c) (x+y+z) (a+b+c)*(x+y+z)

abc / x+y (a*b*c) / (x+y)

8a3 + 3a2 + 2a 8*a*a*a+3*a*a+2*a

(a-b)+(x-y) / mn ((a-b)+(x-y)) / (m*n)

8.8(a+b-c) + c / pq 8.8 * (a+b-c) + (c / (p*q))

Page 21: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Compound Statements 1. A group of valid C expression statements placed within an opening flower brace ‘{‘ and

closing flower brace ‘}’ is referred as a Compound Statements.2. For Example,

{X = (A + (B * 3) – C);Y = A + B * 3;Z = A * (B * 3 – C);

}

1. This statement normally executed sequentially as they appear in the program. 2. In some situations where we may have to change the order of execution of statements until

some specified conditions are met.3. The control statement alter the execution of statements depending upon the conditions specified inside the parenthesis.4. For Example,

if (a == b) if ((x < y) && (y > z)){ { -------- ----------- -------- -----------} }

Control Statements

Page 22: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Operators An operator is a symbol that specifies an operation to be performed

on the operands

Some operator needs two operands (binary) Eg: a+b; ‘+’ is an operator and ‘a’ and ‘b’ are the operands Some operator needs one operand (unary) Eg: ++a;

‘++’ is an operator and a is the operand

Page 23: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Types of Operatorsoperators

Arithmetic operator

Relational operators

Logical operator

Assignment operator

Increment and Decrement Operator (Unary Op.)

Conditional operator (Ternary operator)

Bitwise operator

Special operator

Page 24: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Arithmetic Operators

Operator Meaning Examples+ Addition 1+2 = 3

- Subtraction 3 -2 = 1

* Multiplication 2*2 = 4

/ Division 2/2 = 1

% Modulo division 10/3= 1

This operators help us to carryout basic arithmetic operations such addition, subtraction, multiplication, division

Operation Result Examples

Int/int int 2/2 = 1

Real/int real 7.0/2 = 3.5

Int/real real 7/2.0 = 3.5

Real/real real 7.0/2.0 = 3.5

Page 25: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Relational Operator• This are used to compare two or more operands.• Operands can be variables, constants or expression.• eg: comparison of two marks or two values.

Operator Meaning Example Return value

< is less than 5<6 1

<= is less than or equal to 4<=4 1

> is greater than 5>7 0

>= is greater than or equal to 7>=5 0

== equal to 6==6 1

!= not equal to 5!=5 0

Page 26: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Logical Operator

Operator Meaning Example Return value

&& Logical And (9>2) && (6>4) 1

|| Logical OR (9>2) || (3.4) 1

! Logical Not 4 ! 4 0

AND truth tableTrue True True

True False False

False True False

False False False

OR truth tableTrue True True

True False True

False True True

False False False

• This operators are used to combine the results of two or more conditions.

Page 27: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Assignment Operator This are used to assign a value or an expression or a variable to another variable eg: a = 10; n1 = 20;

Syntax:

identifier = expression;

a) Compound Assignment This operator are used to assign a value to a variable in order to assign a new

value to a variable after performing a specified operation. eg: a+=10,n1-=20;b) Nested Assignment (Multiple)

This operator are used to assign a single value to multiple variables eg: a=b=c=d=e=10;

Page 28: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

List of Shorthand or Compound Assignment Operator

Operator Meaning+= Assign Sum

-= Assign Difference

*= Assign Product

/= Assign Quotient

%= Assign Remainder

~= Assign One’s Complement

<<= Assign Left Shift

>>= Assign Right Shift

&= Assign Bitwise AND

!= Assign Bitwise OR

^= Assign Bitwise X - OR

Page 29: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Increment and Decrement operator

• C provide two operator for incrementing a value or decrementing a value

a) ++ Increment operator (adds one to the variable) b) -- Decrement operator (Minus one to the variable) eg: a++ (if a= 10 then the output would be 11)

Operator Meaning

++X Pre increment

X++ Post increment

--X Pre decrement

X-- Post decrement

Page 30: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Increment and Decrement operator Conti…

Expression Result+ + X 4

X + + 3

- - X 2

X - - 3

If the value of the operand x is 3 then the various expressions and their results are

The pre – increment operation (++X) increments x by 1 and then assign the value to x. The post – increment operation (X++) assigns the value to x and then increments 1. The pre-decrement operation ( --X) decrements 1 and then assigns to x. The post – decrement operation (x--) assigns the value to x and then decrements 1. These operators are usually very efficient, but causes confusion if your try to use too many evaluations in a single statement.

Page 31: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Conditional Operator

• It is used check the condition and execute the statement depending upon the condition

Syntax Condition?exp1:exp2Description The ‘?’ operator act as ternary

operator, it first evaluate the condition, if it is true then exp1 is evaluated if the condition is false then exp2 is evaluated

Example a= 2; b=3ans = a>b?a:b;printf (ans);

Page 32: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Bitwise Operator• This are used to manipulate the data at bit level• It operates only on integers

Operator Meaning

& Bitwise AND

| Bitwise OR

^ Bitwise XOR

<< Shift left

>> Shift right

~ One’s complement

Page 33: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Bitwise Operator cont.

Bitwise AND (both the operand should be high for 1)

0 0 0

1 1 1

Bitwise XOR (the two operands should be different for 1)

0 0 1

1 1 0

• The truth table for Bitwise AND,OR and XOR

Bitwise OR (either of the operand should be high for 1)

0 0 0

1 1 1

Eg: x = 3 = 0000 0011 y = 4 = 0000 0100

x&y = 0000 0000

Eg: x = 3 = 0000 0011 y = 4 = 0000 0100

x|y = 0000 0111

Eg: x = 3 = 0000 0011 y = 4 = 0000 0100

x ^ y = 0000 0111

Page 34: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Bitwise Operator cont.Bitwise One’s Complement

The one’s complement operator (~) is a unary operator, which causes the bits of the operand to be inverted (i.e., one’s becomes zero’s and zero’s become one’s)

For Example, if x = 7

i.e 8 – bit binary digit is 0 0 0 0 0 1 1 1

The One’s Complement is 1 1 1 1 1 0 0 0

Bitwise Left Shift OperatorThe Left shift operator (<<) shifts each bit of the operand to its Left. The general form or

the syntax of Left shift operator is

variable << no. of bits positions

if x = 7 (i.e., 0 0 0 0 0 1 1 1) the value of y in the expression

y = x <<1 is 14

0 0 0 0 1 1 1 0 = 14 since it shifts the bit position to its left by one bit. The value stored in x is multiplied by 2N (where n is the no of bit positions) to get the required value. For example, if x = 7 the result of the expression y = x << 2 is y = x * 22 (i.e. 28)

Page 35: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Bitwise Operator cont.Bitwise Right Shift Operator

The Right shift operator (>>) shifts each bit of the operand to its Right. The general form or the syntax of Right shift operator is

variable >> no. of bits positions

if x = 7 (i.e., 0 0 0 0 0 1 1 1) the value of y in the expression

y = x >> 1 is 3

0 0 0 0 0 0 1 1 = 3 since it shifts the bit position to its right by one bit. The value stored in x is divided by 2N (where n is the no of bit positions) to get the required value. For example, if x = 7 the result of the expression y = x << 2 is y = x / 22 (i.e. 1). If you use the left shift operator i.e. x = x << 1 the value of x will be equal to 2 (i.e., 0 0 0 0 0 0 1 0) since the lost bit cannot be taken back.

Page 36: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Operator Precedence and Associativity of Operator

Page 37: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

1. Each operator in C has a precedence associated with it.

2. This precedence is used to determine how an expression involving more than one operator is evaluated.

3. These are distinct levels of precedence and an operator may belong to one of these levels.

4. The operators at the higher level of precedence are evaluated first.

5. The operators of the same precedence are evaluated either from ‘left to right’ or from ‘right to left’, depending on the level.

6. That is known as the associativity property of an operator.

What is Precedence Rule and Associative Rule

Page 38: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Arithmetic operators precedence

• The precedence of an operator gives the order in which operators are applied in expressions: the highest precedence operator is applied

first, followed by the next highest, and so on. • eg: Arithmetic operator precedence

Precedence operatorHigh *,/,%Low +,-

The arithmetic expression evaluation is carried out using two phases from left to right through the expressions

Page 39: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Example:if (x == 10 +15 && y <10)

The precedence rules say that the addition operator has a higher priority than the logical operator (&&) and the relational operators (== and <). Therefore, the addition of 10 and 15 is executed first. This is equivalent to: if (x == 25 && y < 10)

The next step is to determine whether x is equal to 25 and y is less than 10, if we assume a value of 20 for x and 5 for y, then

x == 25 is FALSE (0)y <10 is TRUE (1)

Note that since the operator < enjoys a higher priority compared to ==, y < 10 is tested first and then x ==25 is tested.

Finally we get,

if (FALSE && TRUE)

Because one of the conditions is FALSE, the complex condition is FALSE.

In the case of &&, it is guaranteed that the second operand will not be evaluated if the first is zero and in the case of || , the second operand will not be evaluated if the first is non – zero.

Relational operators precedence

Page 40: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Precedence and Associativity Table

• The following table lists all the operators, in order of precedence, with their associativity

Operators Operations Associativity priority() Function call Left to Right 1

[] Square brackets

-> Structure operator

. Dot operator

+ Unary plus Right to Left 2

- Unary minus

++ Increment

-- Decrement

! Not

Page 41: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Precedence and Associativity Table cont.

Operators Operations Associativity priority

~ Complement Right to Left 2

* Pointer operation

& Address operator

Sizeof Size of operator

type Type cast

* Multiplication Left to Right 3

/ Division

% Modulo

+ Addition Left to Right 4

- Subtraction

Page 42: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Precedence and Associativity Table cont.

Operators Operations Associativity priority<< Left shift Left to Right

Left to Right

5

6>> Right shift

< is less than

<= is less than or equal to

> is greater than

>= is greater than or equal to

== equal to

!= not equal to

& Bitwise AND Left to Right 7

| Bitwise OR

^ Bitwise XOR

Page 43: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Precedence and Associativity Table cont.

Operators Operations Associativity priority&& Logical And Left to Right 8

|| Logical OR

?= Conditional Right to Left 9

=,*=,-=,&=,+=,^=,!=,<<=,>>=

Assignment Right to Left 10

, comma Left to Right 11

Page 44: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Sample Expression

• Exp = a - 2 * a * b + b / 4

Let us have a=10,b=20

exp = 10 - 2 * 10 * 20 + 20 / 4

Phase I exp = 2*10*20 , 20/4 will be evaluated. phase II exp = 10-400+5 will be evaluated. Result exp = -395.

Page 45: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Expression Evaluation

Let us see some examples for evaluating expression.

Let a = 5, b = 8, c = 2.

x = b / c + a * c

4 10

14

Page 46: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Let us see some examples for evaluating expression.

Let a = 5, b = 8, c = 2.

y = a + (b * 3) - c

29

27

24

Expression Evaluation

Page 47: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

TYPE CONVERSION

OR

TYPE CASTING

Page 48: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

What is Type Conversion or Type Casting

Type Casting means One data type converted into another data type. This is called Type conversion or Type casting.

Example:

1. Integer into floating point number

2. Character into integer

3. Floating point number into Integer Number

Type conversion is classified into two types.

1. Implicit Type Conversion (Automatic Type Conversion)

2. Explicit Type Conversion (Manual Type Conversion)

Type Conversion

Implicit Conversion

Explicit Conversion

Automatic Conversion

Casting Operation

Page 49: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Type Conversion Hierarchy

short char

int

unsigned int

long int

unsigned long int

float

double

long double

Implicit Type

Conversion

Explicit Type

Conversion

Page 50: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Implicit Type Conversion

1. The Implicit Type Conversion is known as Automatic Type Conversion.

2. C automatically converts any intermediate values to the proper type so that the expression can be evaluated without loosing any significance.

3. Implicit type Conversion also known as Converted Lower order data type into Higher order data type.

4. Implicit Type Conversion also known as Widening.

Example:

int a, b;

float c;

c = a + b;

Print c;

float a,b;

int c;

c = a + b; // This is Wrong

Print c;

Page 51: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Explicit Type Conversion

1. The Explicit Type Conversion is, there are instances when we want to force a type conversion in a way that is different from the automatic conversion.

2. The Explicit Type Conversion is Converted Higher order data type into Lower order data type.

3. The Explicit type Conversion is also known as borrowing.

4. The Explicit type conversion forces by a casting operator.

Disadvantage of Explicit Type Conversion

1. float to int causes truncation of the fractional part.

2. double to float causes rounding of digits.

3. Long int to int causes dropping of the excess higher order bits.

The general form of the casting is

(type_name) expression;

Where type_name is one of the standard C data type.

The expression may be a constant, variables or an expression.

For Example:

float a, b;

int c;

c = (int) a + (int) b;

Print c;

Page 52: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Use of Casts

Example Action

x = (int) 7.5 7.5 is converted to integer by truncation.

a = (int) 21.3 / (int) 4.5 Evaluated as 21 / 4 and the result would be 5.

b = (double) sum / n Division is done in floating point mode.

y = (int) (a + b) The result of a + b is converted to integer.

z = (int) a + b a is converted to integer and then added to b.

p = cos ((double) x) Converts x to double before using it.

Page 53: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Input And Output Functions

Page 54: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Ip / Op Statements

We have two methods for providing data to the program.

a) Assigning the data to the variables in a program. b) By using the input/output statements.

‘c’ language supports two types of Ip / Op statements This operations are carried out through function calls. Those function are collectively known as standard I / O library

Page 55: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Ip / Op Statements cont.

Ip / Op Functions

Unformatted Ip / Op statementsInput Outputgetc() putc()getch() putch()Gets() puts()

Formatted Ip / Op statements

Input OutputScanf() printf()fscanf() fprintf()

Page 56: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Unformatted Ip / Op statements

getch() function

Syntax char variable = getch();

Description char is the data type of the variable;getch() is the function

Example char x = getch();putch (x);

• These statements are used to input / output a single / group of characters from / to the input / output device.

Single character Input/output function

putch() function

Syntax putch (character variable);

Description char variable is the valid ‘c’ variable of the type of char data type.

Example char x ;putch (x);

Page 57: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Unformatted Ip / Op statements cont.

gets() functionSyntax gets (char type of array

variable);

Description valid ‘c’ variable declared as one dimensional array.

Example char s[10];gets (s);

Group of character Input / output function. Gets() and puts are used to read / display the string from / to the

standard input / output device.

puts() function

Syntax puts (char type of array variable)

Description valid ‘c’ variable declared as one dimensional array.

Example char s[10];gets (s);puts (s);

Page 58: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Unformatted Ip / Op statements cont.

getc() functionSyntax getc(char type of variable,

file pointer);

Description The getc function returns the next character from the input stream pointed to by

stream

Example int getc(FILE *stream );

Single character Input / output function with files. Gets() and puts are used to read / display the string from / to the

standard input / output device.

putc() function

Syntax putc (char type of variable, file pointer)

Description The putc function returns

the character written .

Example int putc(int c , FILE

*stream );

Page 59: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Sample Program#include<stdio.h>Void main(){ char name[10]; char address[20]; Puts(“Enter the name : ”); gets(name); puts(“Enter the address : ”); gets(address); puts(“Name = “) puts(name); puts(“Address = “); puts(address);}

Page 60: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Formatted Ip / Op statements It refers to Input / Output that has been arranged in a particular format. Using this statements, the user must specify the type of data, that is going to

be accessed.

scanf() (This function is used to enter any combination of input).

Syntax scanf (“control strings”,var1,var2…..var n);

Description control strings is the type of data that user going to access via the input statements.var1,var2 are the variables in which the data’s are stored.

Example int n;scanf (“%d”, &n);

Page 61: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Formatted Ip / Op statements Control strings i) It is the type of data that user is going to access via the input statement ii) These can be formatted . iii) Always preceded with a ‘%’ symbol.

Format code Variable type Display

%c Char Single character

%d Int Decimal integer -32768 to 32768

%s Array of char Print a Strings

%f Float or double Float point value without exponent

%ld Long int Long integer -65536 to 65535

%u Int Unsigned decimal integer

%e Float or double Float point values in exponent form

%h int Short integer

Page 62: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Printf()

printf() (This function is used to display the result or the output data on to screen)

Syntax printf (“control strings”,var1,var2…..var n);

Description Control strings can be anyone of the followinga) Format code character codeb) Execution character setc) Character/strings to be displayedVar1,var2 are the variables in which the data’s are stored.

Example printf (“this is computer fundamental class”);printf (“\n Total is %d and average is %f”,sum,avg);

Page 63: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Control Statements(Decision Making)

Page 64: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Control Statements

Control statements

Selection Statements Iteration statements

The if else statement

The switch statements

The while loop &Do while loop

The for loop

The break statement

Continue statement

Goto statement

Page 65: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Types of Selection Statement

1. Simple if Selection statement

2. if else Selection statement

3. Nested if else Selection statement

4. else if ladder Selection statement

Page 66: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Simple if Selection statement

It is used to control the flow of execution of the statements and also to test logically whether the condition is true or false.

if the condition is true then the statement following the “if “ is executed ifit is false then the statement is skipped.

Syntax: if ( condition ) { statement ; }

Test Condition

Executable X - Statement

True

Page 67: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

//Biggest of Two Numbers

#include <stdio.h>

void main()

{

int a, b;

clrscr();

printf(“Enter the A and B Value:\n”);

scanf(“%d”, &a);

if (a > b)

{

printf(“A is Big”);

}

getch();

}

Page 68: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

The if else statement It is used to execute some statements when the condition is true and execute some other

statements when the condition is false depending on the logical test.Syntax: if ( condition ) { statement 1 ; (if the condition is true this statement will be executed) } else { statement 2 ; (if the condition is false this statement will be executed) }

Test Condition

Executable X - Statement

True

Executable Y - Statement

False

Page 69: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

// Biggest of Two Numbers

#include <stdio.h>

void main(){

int a, b;clrscr();

printf(“Enter the A and B Value:\n”);scanf(“%d%d”, &a,&b);

if (a > b){

printf(“A is Big”);}

else{

printf(“B is Big”);}

getch();}

Page 70: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

// Given Number is ODD or EVEN Number#include <stdio.h>

void main(){

int n;clrscr();

printf(“Enter the Number:\n”);scanf(“%d”, &n);

if (n % 2 == 0){

printf(“Given Number is Even Number”);}else{

printf(“Given Number is Odd Number”);}

getch();}

Page 71: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Nested if….. else statement

Syntax:

if ( condition 1){

if ( condition 2)statement 1 ;

elsestatement 2 ;

}else{

if (condition 3)statement 3;

elsestatement 4;

}

when a series of if…else statements are occurred in a program, we can write an entire if…else statement in another if…else statement called nesting

Page 72: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Test Condition_1

Executable X2 - Statement

Test Condition_2

Executable X1 - Statement

Test Condition_3

Executable X4 - Statement Executable X3 - Statement

TRUE

TRUE

TRUE

FALSE

FALSE

FALSE

Page 73: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

else if Ladder or Multiple if else Statements

Syntax:

if (condition_1)executed statement_1;

else if (condition_2) executed statement_2; else if (condition_3)

executed statement_3;-------------------------------------------- else if (condition_n)

executed statement_n; else

executed statement_x;

When a series of decisions are involved we have to use more than one if – else statement called as multiple if’s. Multiple if – else statements are much faster than a series of if – else statements, since theif structure is exited when any one of the condition is satisfied.

Page 74: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Test Condition_1

Test Condition_2

Exec. Stat_1

Test Condition_3

TRUE

Test Condition_n

Exec. Stat_2

Exec. Stat_3

Exec. Stat_nExec. Stat_X

TRUE

TRUE

TRUE

FALSE

FALSE

FALSE

FALSE

Page 75: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

else if Ladder

if (result >= 75) printf ( “ Passed: Grade A\n “ ) ;

else if (result >= 60)printf ( “ Passed: Grade B\n “ ) ;

else if (result >= 45) printf ( “ Passed: Grade C\n “ ) ;

elseprintf ( “ Failed\n “ ) ;

Page 76: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

THE SWITCH STATEMENT

• The control statements which allow us to make a decision from the number of choices is called switch (or) Switch-case statement.

• It is a multi way decision statement, it test the given variable (or) expression against a list of case value.

switch (expression){ case constant 1: simple statement (or) compound statement; case constant 2: simple statement (or) compound statement; case constant 3: simple statement (or) compound statement; }

switch (expression){ case constant 1: simple statement (or) compound statement; case constant 2: simple statement (or) compound statement; default : simple statement (or) compound statement; }

Page 77: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Example Without Break Statement#include<stdio.h>void main (){

int num1,num2,choice;printf(“Enter the Two Numbers:\n”);scanf(“%d%d”,&num1,&num2);printf(“1 -> Addition\n””);printf(“2->Subtraction\n”);printf(“3->Multiplication\n”);printf(“4->Division\n”);printf(“Enter your Choice:\n”);scanf(“%d”,&choice);

switch(choice){

case 1: Printf(“Sum is %d\n”, num1+num2);

case 2: Printf(“Diif. is %d\n”, num1-num2);

case 3: Printf(“Product is %d\n”,

num1*num2);

case 4: Printf(“Division is %d\n”, num1/num2);

default: printf (“Invalid Choice…..\n”);

}

getch();}

#include<stdio.h>void main (){

int num1,num2,choice;printf(“Enter the Two Numbers:\n”);scanf(“%d%d”,&num1,&num2);printf(“1 -> Addition\n””);printf(“2->Subtraction\n”);printf(“3->Multiplication\n”);printf(“4->Division\n”);printf(“Enter your Choice:\n”);scanf(“%d”,&choice);

switch(choice){

case 1: printf(“Sum is %d\n”, num1+num2); break;case 2:

printf(“Diif. is %d\n”, num1-num2); break;case 3: printf(“Product is %d\n”,

num1*num2); break;case 4:

printf(“Division is %d\n”, num1/num2); break;default: printf (“Invalid Choice…..\n”);

}

getch();}

Example With Break Statement

Page 78: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Rules for Switch

The expression in the switch statement must be an integer or character constant. No real numbers are used in an expression. The default is optional and can be placed anywhere, but usually placed at end. The case keyword must be terminated with colon (:); No two case constant are identical. The values of switch expression is compared with case constant in the order specified i.e

from top to bottom. A switch may occur within another switch, but it is rarely done. Such statements are called

as nested switch statements. The switch statement is very useful while writing menu driven programs.

Page 79: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Iteration Statements1. Iteration statements is also known as Looping statement.2. A segment of the program that is executed repeatedly is called as a loop.3. Some portion of the program has to be specified several number of times or until a

particular condition is satisfied.4. Such repetitive operation is done through a loop structure.5. The Three methods by which you can repeat a part of a program are,

1. while Loops2. do….while loops3. for Loop

Loops generally consist of two parts :

Control expressions: One or more control expressions which control the execution of the loop, Body : which is the statement or set of statements which is executed over

and over

Page 80: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Any looping statement , would include the following steps:

a) Initialization of a condition variable

b) Test the control statement.

c) Executing the body of the loop depending on the condition.

d) Updating the condition variable.

Page 81: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

While Loop

A while loop has one control expression, and executes as long as that expression is true. The general syntax of a while loop is

A while loop is an entry controlled loop statement.

initialize loop counter;while (condition){

statement (s);increment or decrement loop counter

}

Page 82: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Start

Initialize

Test Condition

Body of Loop

Increment or Decrement

Stop

False

True

Page 83: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Example:

// Print the I Values

#include <stdio.h>

void main()

{

int i;

clrscr();

i = 0;

while(i<=10)

{

printf(“The I Value is :%d\n”,i);

++i;

}

getch();

}

// Summation of the series 1 + 2 + 3 + 4 + …….

#include <stdio.h>

void main()

{

int i, sum;

clrscr();

i = 1;

sum = 0;

while(i<=10)

{

sum = sum + i

printf(“The Sum Value is:%d\n”,i);

++i;

}

getch();

}

Page 84: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

THE do-while LOOP• The body of the loop may not be executed if the condition is not satisfied in while

loop.• Since the test is done at the end of the loop, the statements in the braces will

always be executed at least once.• The statements in the braces are executed repeatedly as long as the expression

in the parentheses is true.

Make a note that do while ends in a ; (semicolon)Note that Do… While Looping statement is Exit Controlled Looping statement

initialize loop counter;do{

statement (s);increment or decrement loop counter

}while (condition);

Page 85: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Start

Initialize

Test Condition

Body of Loop

Increment or Decrement

Stop

False

True

Page 86: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Sl.No. while loop do-while loop

1. The while loop tests the condition beforeeach iteration.

The do – while loop tests the condition afterthe first iteration.

2. If the condition fails initially the loop isSkipped entirely even in the first iteration.

Even if the condition fails initially the loop isexecuted once.

Difference Between While Loop and Do – While Loop

Page 87: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Example:

// Print the I Values

#include <stdio.h>

void main()

{

int i;

clrscr();

i = 1;

while(i<=10)

{

printf(“The I Value is :%d\n”,i);

i++;

}

getch();

}

// Print the I Values

#include <stdio.h>

void main()

{

int i;

clrscr();

i = 1;

do

{

printf(“The I Value is :%d\n”,i);

i++;

} while(i<=10);

getch();

}

Page 88: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

for LoopThe for loop is another repetitive control structure, and is used to execute set of instruction repeatedly until the condition becomes false.To set up an initial condition and then modify some value to perform each succeeding loop as long as some condition is true.

The syntax of a for loop is

The three expressions : expr1 - sets up the initial condition, expr2 - tests whether another trip through the loop should be taken, expr3 - increments or updates things after each trip.

for( expr1; expr2 ;expr3){ Body of the loop;}

Page 89: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Start

Initialize; test_condition; Increment / Decrement

Body of Loop

Stop

Page 90: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Example

#include<stdio.h>

void main()

{

for (int i = 1; i <= 10; i++)

printf("i is %d\n", i);

}

There is no need of { } braces for single line statement and for multiple line it is

essential else it will consider only next line of for statement.

Given example will print the values from 1 to 10.

Page 91: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Additional Features of for Loop

Case 1:

The statement

p = 1;

for (n = 0; n < 17; ++ n)

can be rewritten as

for (p = 1, n = 0; n < 17;++n)

Case 2:

The second feature is that the test – condition may have any compound relation and

the testing need not be limited only to the loop control variable.

sum = 0;

for (i = 1; i < 20 && sum < 100; ++ i)

{

sum = sum + i;

printf(“%d %d\n”, i, sum);

}

Page 92: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Additional Features of for Loop Conti…

Case 3:It also permissible to use expressions in the assignment statements of initialization

and increments sections.For Example:

for (x = (m + n) / 2; x > 0; x = x / 2)Case 4:

Another unique aspect of for loop is that one or more sections can be omitted, if necessary.

For Example:m = 5;for ( ; m ! = 100 ;){

printf(“%d\n”,m);m = m + 5;

}Both the initialization and increment sections are omitted in the for statement. The

initialization has been done before the for statement and the control variable is incremented inside the loop. In such cases, the sections are left ‘blank’. However, the semicolons separating the sections must remain. If the test – condition is not present, the for statement sets up an ‘infinite’ loop. Such loops can be broken using break or goto statements in the loop.

Page 93: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Case 5:We can set up time delay loops using the null statement as follows:

for ( j = 1000; j > 0; j = j – 1)1. This is loop is executed 1000 times without producing any output; it simply causes a

time delay.2. Notice that the body of the loop contains only a semicolon, known as a null statement.

Additional Features of for Loop Conti…

Page 94: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Nesting of for Loop

The One for statement within another for statement is called Nesting for Loop.

Syntax:

for (initialize; test_condi; incre. / decre.){

------------------------------for (initialize; test_condi; incre. / decre.){

----------------------

}------------------------------

}----------------------------------

Outer for LoopInner for

Loop

Page 95: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Example

// Print the I and J Value

#include<stdio.h>#include<conio.h>void main(){

int I, j;clrscr();

for (i = 1; I < = 10 ; I ++){

printf (“The I Value is %d \n", i);

for (j = 1; j < = 10; j ++){

printf (“The J Value is %d \n", j);

}}

getch();}

Page 96: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

JUMPS IN LOOPS

Page 97: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

1. Loops perform a set of operations repeatedly until the control variable fails to satisfy the test – condition.

2. The number of times a loop is repeated is decided in advance and the test condition is written to achieve this.

3. Sometimes, when executing a loop it becomes desirable to skip a part of the loop or to leave the loop as soon as a certain condition occurs.

4. Jumps out of a Loop is Classified into three types

1. break;

2. continue;

3. goto;

Page 98: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

The break Statement1. A break statement is used to terminate of to exit a for, switch, while or do – while

statements and the execution continues following the break statement.

2. The general form of the break statement is

3. The break statement does not have any embedded expression or arguments.

4. The break statement is usually used at the end of each case and before the start of the next case statement.

5. The break statement causes the control to transfer out of the entire switch statement.

break;

Page 99: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

#include <stdio.h>

void main()

{

int i;

clrscr();

i = 1;

while (i < = 10)

{

printf (“The I Value is: %d \n”, i);

if (i = = 6)

{

printf (“The I value is Reached 6, So break of the programs\n”);

break;

}

i++;

}

Page 100: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

The continue Statement• The continue statement is used to transfer the control to the beginning of the loop, there

by terminating the current iteration of the loop and starting again from the next iteration of the same loop.

• The continue statement can be used within a while or a do – while or a for loop.

• The general form or the syntax of the continue statement is

• The continue statement does not have any expressions or arguments.

• Unlike break, the loop does not terminate when a continue statement is encountered, but it terminates the current iteration of the loop by skipping the remaining part of the loop and resumes the control tot the start of the loop for the next iteration.

continue;

Page 101: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

#include <stdio.h>

void main()

{

int i;

clrscr();

i = 1;

while (i < = 10)

{

printf (“The I Value is: %d \n”, i);

if (i = = 6)

{

printf (“The I value is Reached 6, But Continue this Programs\n”);

continue;

}

i++;

}

Page 102: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Sl.No. break continue

1. Used to terminate the loops or to exit loop

from a switch.

Used to transfer the control to the start ofloop.

2. The break statement when executed causes

immediate termination of loop containingit.

Continue statement when executed causesImmediate termination of the current

iteration of the loop.

Differences Between Break and Continue Statement

Page 103: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

The goto Statement• The goto statement is used to transfer the control in a loop or a function from one point to

any other portion in that program.

• If misused the goto statement can make a program impossible to understand.

• The general form or the syntax of goto statement is

• The goto statement is classified into two types

a. Unconditional goto

b. Conditional goto

goto label;Statement (s);…………….

label:statement (s);

Page 104: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Unconditional Goto

The Unconditional goto means the control transfer from one block to another block without checking the test condition.

Example:

#include <stdio.h>

void main()

{

clrscr();

Start:

printf(“Welcome\n”);

goto Start;

getch();

}

Page 105: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Conditional Goto

The Conditional goto means the control transfer from one block to another block with checking the test condition.

#include <stdio.h>void main(){

int a, b;clrscr();printf (“Enter the Two Value:\n”);scanf (“%d”, &a, &b);

if (a > b)goto output_1;

elsegoto output_2;

output_1:printf (“A is Biggest Number”);goto Stop;

output_2:printf (“B is Biggest Number”);goto Stop;

Stop:

getch();

}

Page 106: C Programming Class I. Introduction to C Generation of ‘C’ Language 1.In 1967, Martin Richards developed a language called BCPL (Basic Combined Programming

Thank You!