c programming slide 2015 -1
TRANSCRIPT
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 1/59
1
Text Book: Recommended for
C Programming
(1). Computer Programming in C
By V Rajaraman
(2). Programming in C
By S.G. Kochan
(3). C Programming
By E Balagurusamy
(4) Programming with C
By B. Gottfried
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 2/59
2
C Programming is a high level
language for scientific computing.
The characters in C are grouped
into following categories:
Letters: A, B, …, Z ( Upper case)
a,b,c, ..., z (Lower case )
Numeric Digits:
0, 1, 2, 3,4,5,6,7,8,9
Special Characters:
, . ; : ? ‘ “
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 3/59
3
| / \ ! ~ _ $
% & ^ * #
- + > < ( ) [ ] { }
White Spaces:
(1).Blank Space
(2). Horizontal Tab
(3). Vertical Tab
(4). New Line
(5). Form feed
(6) Carriage Return
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 4/59
4
Key Words ( Reserved Words in C )
auto, break, case, char, const,
continue, default, do, double, else,
entry, enum, extern, float, for, goto,
if, int, long, register, return, short,
signed, sizeof, static, struct, switch,
typedef, union, unsigned, void, while,
Library Funtions:
abs( k) in Maths we write as: |k|
fabs(x) in Maths we write as: |x|
cos(x)
sin(x)
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 5/59
5
tan(x)
acos(x)
asin(x)
atan(x)
atan2( x,y )
cosh(x)
sinh(x)
tanh(x)
exp(x)
ceil(x)
floor(x)
log(x)
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 6/59
6
sqrt(x)
pow(x,y)
getc( )
putc( )
getchar( )
putchar( )
rand( )
scanf( )
printf( )
tolower( )
toupper( )
toascii( )
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 7/59
7
Variable Name / Function Name
( Identifiers ):
Identifiers are the names given to
various program elements, such as
variables, functions and arrays.
An identifiers consists of letters and
digits and under score in any order.
The first character must be a letter
( either lower case or upper case ).
Both upper and lower case letter are
used. Rest of the characters can be
alphabetic or numeric. An identifier
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 8/59
8
has some fixed length. For some
compiler there is no restrictions.
Examples: Valid variables names:
x
y27
sum_1
diff_2
temp_today
tax_rate
Invalid variable names:
2y tax rate
4x tax-rate
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 9/59
9
Constants:
(1) Integer Constants
124
-3279
0
-123890
458
(2)Floating point constants:
123.50
-10.75
3.18E31
-5.723e-20
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 10/59
10
(3)Character constants:
‘x’
‘X’
‘n’
‘N’
‘y’
‘Y’
‘0’
‘+’
‘-’
‘*’
‘&’
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 11/59
11
(5) String Constants:
“Hello”
“IIT-KGP”
“STCP2015”
“stcp2015”
“Tuesday”
“Radha Reddy”
“many more”
“********”
“++++”
“&&&&&&”
“Welcome”
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 12/59
12
Arithmetic Operators:
+ 14+5 gives 19
- 14-5 gives 9
* 14*5 gives 70
/ 14/5 gives 2
% 14%5 gives 4
Increment and Decrement
++ increment
-- decreament
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 13/59
13
Relational Operators:
< less than
<= less than or equal to
> greater than
>= greater than or equal to
= = equal to
!= not equal to
Logical Operators:
&& and
|| or
! not
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 14/59
14
Some Assignment statements:
a= a+b;
a=a-b;
a=a*b;
a=a/b;
a=a%b; where a and b are integers.
All these can be written as:
a+=b;
a-=b;
a*=b;
a/=b;
a%=b;
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 15/59
15
Declaration:
int x,y,z;
short int x1,x2;
long int n1, n2, n3;
unsigned int year1, year2;
unsigned long int p1, p2,p3;
float rate1, rate2, rate3;
double w1, w2, w3, w4;
char g1, g2, g3, g4, g5,g6;
char fname[20], lname[20];
( string and array declaration )
int x[100];
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 16/59
16
float y[50];
double rate[ 200];
Statements in C:
y= sinx cosx in Maths
y=sin(x)*cos(x);
c= (a+b)( a-b)+ (a-b)/(a+b) in Maths
c= (a+b)*(a-b) + (a-b)/(a+b);
d=a^3 + b^3 + c^3 -3abc
d=pow(a,3) + pow(b,3) +pow(c,3) -
3*a*b*c;
p= |x| + |y| p = abs(x) + abs(y);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 17/59
17
Some Escape Characters in C:
\n New line
\t Tab ( 4 columns to right)
\b Backspace ( one column )
\r Carrige Return
\f Form feed
\\ Backslash
\’ Single Quote
Syntax of a while Statement:
Rule 1: single statement
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 18/59
18
while ( this condition is true)
execute this statement;
Example 1:
while ( n <= 50 )
nsquare= n*n;
Example 2:
while( n <= 20)
ncube=n*n*n;
Syntax of while statement:
Rule 2: To execute more than one
statements
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 19/59
19
while ( this condition is true )
{
execute statement 1;
execute statement 2;
execute statement 3;
………………..
execute statement n;
}
while statement:
while( index <= 100)
{
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 20/59
20
sum=sum+index;
prod=prod*index;
index=index+1;
}
Example 2:
while ( n >= 1)
{
sum=sum+n;
n=n-1; }
Syntax of if statement:
Rule 1: single statement
if ( this condition is true )
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 21/59
21
execute this statement 1;
Example 1:
if ( mark >= 35 )
printf( “ Grade is P \n”);
Syntax of if statement:
Rule 2: multiple statements
if ( this condition is true )
{
execute this statement 1;
execute this statement 2;
execute this statement 3;
…………………………
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 22/59
22
execute this statement n;
}
Example 2:
if ( x = = 235)
{
printf( “x=%d \n”, x);
x=x/10;
printf(“ x=%d \n”, x);
x=x/10;
printf(“x=%d \n”, x); }
Syntax of if else statement:
Rule 1: Single statement:
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 23/59
23
if ( this condition is true )
Execute this statement 1;
else
execute this statement 2;
Rule 2: Multiple statements
if ( this condition is true )
{
Execute this statement 1;
Execute this statement 2;
…………………………
Execute this statement n;
}
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 24/59
24
else
{
Execute this statement s1;
Execute this statement s2;
………………………
Execute this statement sn;
}
Example 1:
if( m%2==0 )
printf( “ m is an even number \n”);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 25/59
25
else
printf( “ m is an odd number \n”);
Example 2:
if( m%2 ==0)
{
printf( “m is an even number \n”);
printf(“It ends with a:0,2,4,6,8 \n”);
}
else
printf(“ m is an odd number \n”);
printf( “ It ends with a:1,3,5,7,9\n”);
printf(“ It may be a prime \n”)
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 26/59
26
}
Syntax of if- else if- else statement:
Rule 1: Single statement
if( this condition is true )
Execute statemet s1;
else if ( this condition is true)
Execute statement s2;
else if ( this condition is true)
Execute statement s3;
……………………….
else
Execute statement sn;
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 27/59
27
Syntax of if- else if- else statement:
Rule 2: Multiple statements
if( this condition is true )
{
Execute statemet s11;
Execule statement s12;
…………………….
}
else if ( this condition is true)
{
Execute statement s21;
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 28/59
28
Execute statement s22;
…………………………
}
else if ( this condition is true)
{
Execute statement s31;
Execute statement s32;
……………………….
}
else
{
Execute statement sn1;
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 29/59
29
Execute statement sn2;
………………….
}
Example of Printing Grades:
Mark >= 90 grade is Ex.
Mark >= 80 but less than 90,
Grade is A.
Mark >= 70 but less than 80,
Grade is B.
Mark >= 60 but less than 70,
Grade is C.
Mark >= 50 but less than 60,
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 30/59
30
Grade is D.
Mark >= 35 but less than 50,
Grade is P.
Mark < 35 grade is F.
Example 1:
if( m >= 90 )
printf( “ grade is Ex \n”);
else if ( m>= 80 )
printf( “ grade is A \n”);
else if ( m>= 70 )
printf( “ grade is B \n”);
else if ( m>= 60 )
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 31/59
31
printf( “ grade is C \n”);
else if ( m>= 50 )
printf( “ grade is D \n”);
else if ( m>= 35 )
printf( “ grade is P \n”);
else
{
printf( “ grade is F \n”);
printf(“ Repeat it again \n”); }
Example 2:
If ( a > b && a > c )
printf( “ a is largest \n”);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 32/59
32
else if ( a > b && a < c )
printf(“ c is largest \n”);
else
printf(“ b is largest \n”);
Example 3:
if ( a < b && a < c )
printf( “ a is smallest \n”);
else if ( b < a && b < c )
printf(“ b is smallest \n”);
else
printf(“ c is smallest \n”);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 33/59
33
Increment Rule 1:
int a, b;
a=5;
b=++a;
printf( “ a=%d, b=%d \n”, a,b);
a= 6, b=6
Equivalent One
int a, b;
a=5;
a=a+1;
b=a;
printf( “ a=%d, b=%d \n”, a,b);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 34/59
34
Increment Rule 2:
int a, b;
a=15;
b=a++;
printf( “ a=%d, b=%d \n”, a,b);
a= 16, b=15
Equivalent One
int a, b;
a=15;
b=a;
a=a+1;
printf( “ a=%d, b=%d \n”,a,b);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 35/59
35
Decrement Rule 1:
int a, b;
a=50;
b=--a;
printf( “ a=%d, b=%d \n”,a,b);
a= 49, b=49
Equivalent One
int a, b;
a=50;
a=a-1;
b=a;
printf( “ a=%d, b=%d \n”,a,b);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 36/59
36
Decrement Rule 2:
int a, b;
a=15;
b=a--;
printf( “ a=%d, b=%d \n”,a,b);
a= 14, b=15
Equivalent One
int a, b;
a=15;
b=a;
a=a-1;
printf( “ a=%d, b=%d \n”,a,b);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 37/59
37
Syntax of for Statement:
for ( initialize; condition; increment
or decrement )
{
Execute statement 1;
Execute statement 2;
Execute statement 3;
…………………..
Execute statement n;
Re evaluate counter;
}
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 38/59
38
Example 1:
int i, sum1, sum2, sum3 ;
sum1=0, sum2=0, sum3=0;
for ( i=1; i <=100; i++ )
{
sum1=sum1+i;
sum2=sum2+i*i;
sum3=sum3=i*i*i;
}
printf( “ sum1=%d \n”, sum1);
……………..
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 39/59
39
Example 2:
int i, sum1, sum2, sum3 ;
sum1=0, sum2=0, sum3=0;
for ( i=100; i >=1; i-- )
{
sum1=sum1+i;
sum2=sum2+i*i;
sum3=sum3=i*i*i;
}
printf( “ sum1=%d \n”, sum1);
……………..
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 40/59
40
Example 3:
int i, sum1, sum2, sum3 ;
sum1=0, sum2=0, sum3=0;
for ( i=1; i <=99; i=i+2 )
{
sum1=sum1+i;
sum2=sum2+i*i;
sum3=sum3=i*i*i;
}
printf( “ sum1=%d \n”, sum1);
……………..
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 41/59
41
Example 4:
int i, sum1, sum2, sum3 ;
sum1=0, sum2=0, sum3=0;
for ( i=99; i >=1; i=i-2 )
{
sum1=sum1+i;
sum2=sum2+i*i;
sum3=sum3+i*i*i;
}
printf( “ sum1=%d \n”, sum1);
……………..
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 42/59
42
Syntax of break statement:
for( n=1; n<= 20; ++i)
{
if( n == 7 ) break;
printf( “%d ,” , n );
} Output : 1, 2,3,4,5,6,
for( n=12; n>=1; n--)
{
if( n == 7 ) break;
printf( “%d ,” , n );
}
Output: 12, 11,10,9,8,
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 43/59
43
Syntax of continue statement:
for( n=1; n<= 10; ++i)
{
if( n == 7 ) continue;
printf( “%d ,” , n );
} Output: 1, 2,3,4,5,6,8,9,10
for( n=12; n>=1; n--)
{
if( n == 7 ) continue;
printf( “%d ,” , n );
}
Output: 12, 11,10,9,8, 6,5,4,3,2,1,
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 44/59
44
/ * Program No. 1 */
/* To print a positive integer k */
/* in a reverse order */
#include<stdio.h>
main( )
{
int k, i ;
printf( " give your input k \n");
scanf("%d", &k);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 45/59
45
printf("\n Reverse of the number
is:");
while( k >= 1)
{
i=k %10;
printf("%d",i);
k=k/10;
}
printf("\n");
return 0;
}
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 46/59
46
2015
Reverse of the number is: 5102
/ * Program No. 2 */
/* Print the Numeric Characters */
/* of a positive Integer k in a line*/
#include<stdio.h>
main( )
{
int k,i;
printf( " give your input k \n");
scanf("%d",&k);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 47/59
47
printf("Numeric characters
are:\t\t");
while( k >= 1)
{
i=k %10;
printf("\b\b%d",i);
k=k/10;
}
printf("\n");
return 0;
}
2015
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 48/59
48
Numeric Characters are: 2015
/ * Program No. 3 */
/* Binary form of a positive */
/* integer k to be printed in a line*/
#include<stdio.h>
main( )
{
int k,i;
printf( " give your input k \n");
scanf("%d",&k);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 49/59
49
printf("Binary form of the given
integer is:\t\t");
while( k >= 1)
{
i=k %2;
printf("\b\b%d",i);
k=k/2;
}
printf("\n");
return 0;
}
4
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 50/59
50
Binary form of the given number is :
100
/ * Program No. 4 */
/* Octal form of a positive */
/* decimal integer k */
#include<stdio.h>
main( )
{
int k,i;
printf( " give your input k \n");
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 51/59
51
scanf("%d", &k);
printf("Octal form of the given
integer is:\t\t");
while( k >= 1)
{
i=k %8;
printf("\b\b%d",i);
k=k/8;
}
printf("\n");
return 0;
}
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 52/59
52
64
Octal form of the given integer is:
100
/ * Program No. 5 */
/* Hexadecimal form of a */
/* Positive Integer k */
#include<stdio.h>
main( )
{
int k,i;
printf( " give your k \n");
scanf("%d",&k);
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 53/59
53
printf("Hexadecimal form of the
number is:\t\t");
while( k >= 1)
{
i=k %16;
if( i<=9) printf("\b\b%d",i);
if( i==10) printf("\b\bA");
if( i==11) printf("\b\bB");
if( i==12) printf("\b\bC");
if( i==13) printf("\b\bD");
if( i==14) printf("\b\bE");
if( i==15) printf("\b\bF");
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 54/59
54
k=k/16;
}
printf("\n");
return 0;
}
256
Hexadecimal form of the number is:
100
/ * Program No. 6 */
/* HCF of two positive integers */
/* where x > y or y > x */
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 55/59
55
#include<stdio.h>
main( )
{
int x,y,i;
printf( " input x and y \n");
scanf( "%d%d", &x, &y);
while( x%y > 0 )
{
i=x%y;
x=y;
y=i;
}
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 56/59
56
printf( "HCF is equal to: %d \n", y);
return 0;
}
150 100
HCF is equal to: 50
/ * Program No. 7 */
/* HCF and LCM of two positive */
/* unequal integers */
#include<stdio.h>
main( )
{
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 57/59
57
int x, y, i, x1, y1, hcf, lcm;
printf( "input x and y \n");
scanf( "%d%d", &x, &y);
x1=x;
y1=y;
while( x%y > 0 )
{
i=x%y;
x=y;
y=i;
}
hcf=y;
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 58/59
58
lcm=(x1*y1)/hcf;
printf( " HCF =%d \n", hcf);
printf( " LCM =%d \n", lcm);
return 0;
}
150 100
HCF = 50
LCM = 300
7/23/2019 C Programming Slide 2015 -1
http://slidepdf.com/reader/full/c-programming-slide-2015-1 59/59
59
Prof. M.P. Biswal
Dept. of Mathematics
IIT- Kharagpur