2. C programming---basic
1 Introduction to C
2 C Fundamentals
3 Formatted Input/Output
4 Expression
5 Selection Statement
6 Loops
7 Basic Types
8 Arrays
9 Functions
10 Pointers
11 Pointers and Arrays
12 Structure
3. What is C
C is an ANSI/ISO standard and powerful
programming language for developing real time
applications. C programming language was invented
by Dennis Ritchie at the Bell Laboratories in 1972.
C programming is most widely used programming
language even today. All other programming
languages were derived directly or indirectly from C
programming concepts. C programming is the basic for
all programming languages.
4. The C Character Set
A character denotes any alphabet, digit or special
symbol used to represent information.
Alphabets – A,B,…………Y,Z
a,b,………….y,z
Digits - 0,1,2,3,4,5,6,7,8,9
Special symbols - ~’@#$%^&*()+-/*+,-:;”<>.?/
5. Constant, Variables and Keywords
C Variables
variables in c are memory location that are
given names and can be assigned values. The two basic
kind of variables in C which are numeric and character.
Numeric variable
Numeric variables can either be
integer values or real values .
Character variable
Character variable are character
value.
6. C Constant
The different between variable and constant is
that variable can change their value at any time but constant
can never change their value.
Types of C Constants
Primary Constants-
integer, Real, Character
Secondary Constants-
Array, Pointer, Structure
7. C Keywords
Keywords are the word whose meaning
has already been explained to the compiler.
Some C keywords are
auto, double, int, struct, break, else,
long , Continue, do, if, while…….upto 32.
8. Operators in C programming
Arithmetic Operators
Increment and Decrement Operators
Assignment Operators
Relational Operators
Logical Operators
Conditional Operators
9. Arithmetic Operators
Operator Meaning of Operator
+ addition or unary plus
- subtraction or unary minus
* multiplication
/ division
% remainder after division( modulo
division)
10. Increment and decrement operators
Example-
Let a=5 and b=10
a++; //a becomes 6
a--; //a becomes 5
++a; //a becomes 6
--a; //a becomes 5
11. Assignment Operators
The most common assignment operator is =.
This operator assigns the value in right side to
the left side.
For example:
var =5 //5 is assigned to var
a=c; //value of c is assigned to a
5=c; // Error! 5 is a constant.
12. Relational Operator
Relational operators checks relationship
between two operands. If the relation is true,
it returns value 1 and if the relation is false, it
returns value 0.
< Less than <= Less than or equal to
> Greater than >= Greater than or equal
== Equal to != Not equal to
14. Conditional Operator
The condition operator consists of two symbols
the question mark(?) and the colon (:).
exp1?exp2:exp3
Example-
c=(c>0)?10:-10;
15. Example 1
#include <stdio.h>
// program reads and prints the same thing
int main() {
int number ;
printf (“ Enter a Number: ”);
scanf (“%d”, &number);
printf (“Number is %dn”, number);
return 0;
}
Output : Enter a number: 4
Number is 4
16. Preprocessor directives
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
The #include directives “paste” the contents of the files
stdio.h, stdlib.h and string.h into your source code, at
the very place where the directives appear.
These files contain information about some library
functions used in the program:
stdio stands for “standard I/O”, stdlib stands for “standard
library”, and string.h includes useful string manipulation
functions.
17. What is main()
main() is a function.
When a program begins running, the system calls the
function main() which marks the entry point of the
program.
main() are enclosed within a pair of braces {} as
shown below.
int main()
{
Statement1;
Statement2;
Statement3;
}
18. Input / Output
printf (); //used to print to console(screen)
scanf (); //used to take an input from
console(user).
example: printf(“%c”, ’a’); scanf(“%d”, &a);
More format specifiers
%c The character format specifier.
%d The integer format specifier.
%i The integer format specifier (same as %d).
%f The floating-point format specifier.
%o The unsigned octal format specifier.
%s The string format specifier.
%u The unsigned integer format specifier.
%x The unsigned hexadecimal format specifier.
%% Outputs a percent sign.
19. C – Decision Control statement
In decision control statements (C if else and
nested if), group of statements are executed
when condition is true. If condition is false,
then else part statements are executed.
There are 3 types of decision making control
statements in C language. They are,
• if statements
• if else statements
• nested if statements
20. Decision control statements
If
In these type of statements, if condition is true,
then respective block of code is executed.
Syntax-
if (condition)
{
Statements;
}
21. Decision control statements
if…else
In these type of statements, group of
statements are executed when condition is
true. If condition is false, then else part
statements are executed.
Syntax-
if (condition)
{ Statement1; Statement2;}
else
{ Statement3; Statement4; }
22. Decision control statements
nested if
If condition 1 is false, then condition 2 is
checked and statements are executed if it is
true. If condition 2 also gets failure, then else part
is executed.
Syntax-
if (condition1)
{ Statement1; }
else_if (condition2)
{ Statement2; }
else Statement 3;
23. C – Loop control statements
Loop control statements in C are used to
perform looping operations until the given
condition is true. Control comes out of the loop
statements once condition becomes false.
There are 3 types of loop control statements in C
language. They are,
for
while
do-while
24. For loop control statement
For loop is made up of 3 parts inside its brackets which are
separated by semicolons.
Syntax-
for (exp1; exp2; expr3)
{ statements; }
Where,
exp1 – variable initialization
( Example: i=0, j=2, k=3 )
exp2 – condition checking
( Example: i>5, j<3, k=3 )
exp3 – increment/decrement
( Example: ++i, j–, ++k )
25. while loop control statement
While loop often the case in programming
that you want to do something a fixed
number of times.
Syntax-
while (condition)
{ statements; }
where,
condition might be a>5, i<10
26. do while loop control statement
Do while loop same as while loop except that
its text condition at the bottom of the loop.
Syntax
do { statements; }
while (condition);
where,
condition might be a>5, i<10
27. C – Case control statements
The statements which are used to execute
only specific block of statements in a series of
blocks are called case control statements.
There are 4 types of case control statements
in C language. They are,
– break
– continue
– goto
28. break control statements
Break statement is used to terminate the while
loops, switch case loops and for loops from the
subsequent execution.
We often comes across situation where we want
to jump out of a loop instantly, without waiting to
get back the condition test.
Syntax:
break;
29. Example program for break statement in C:
#include <stdio.h>
int main()
{
int i;
for(i=0;i<10;i++)
{
if(i==5)
{
printf("nComing out of for loop when i = 5");
break;
}
printf("%d ",i);
}
}
30. Continue statement in C:
Continue statement is used to continue the next
iteration of for loop, while loop and do-while
loops. So, the remaining statements are skipped
within the loop for that particular iteration.
Syntax :
continue;
31. Example program for continue statement in C:
#include <stdio.h>
int main()
{
int i;
for(i=0;i<10;i++)
{
if(i==5 || i==6)
{
printf("nSkipping %d from display using " "continue statement n",i);
continue;
}
printf("%d ",i);
}
}
32. goto statement in C:
goto statements is used to transfer the normal flow of a
program to the specified label in the program.
Below is the syntax for goto statement in C.
{
…….
go to label;
…….
…….
LABEL:
statements;
}
33. What is Array
Array is a collection of variables belongings to
the same data type. You can store group of
data of same data type in an array.
• Array might be belonging to any of the data types
• Array size must be a constant value.
• Always, Contiguous (adjacent) memory locations
are used to store array elements in memory.
• It is a best practice to initialize an array to zero or
null while declaring, if we don’t assign any values
to array.
34. Example program for array in C:
#include<stdio.h>
int main()
{
int i;
int arr[5] = {10,20,30,40,50};
// declaring and Initializing array in C
//To initialize all array elements to 0, use int arr[5]={0};
/* Above array can be initialized as below also
arr[0] = 10;
arr[1] = 20;
arr[2] = 30;
arr[3] = 40;
arr[4] = 50;
*/
for (i=0;i<5;i++)
{
// Accessing each variable
printf("value of arr[%d] is %d n", i, arr[i]);
}
}
Output
value of arr[0] is 10
value of arr[1] is 20
value of arr[2] is 30
value of arr[3] is 40
value of arr[4] is 50
35. What is String
C Strings are nothing but array of characters ended with null
character (‘0’).
This null character indicates the end of the string.
Strings are always enclosed by double quotes. Whereas, character
is enclosed by single quotes in C.
Example for C string:
char string*20+ = , ‘f’ , ’r’ , ‘e’ , ‘s’ , ‘h’ , ‘2’ , ‘r’ , ‘e’ , ‘f’ , ’r’ , ‘e’ , ‘s’ , ‘h’ ,
‘0’-; (or)
char string*20+ = “fresh2refresh”; (or)
char string [] = “fresh2refresh”;
Difference between above declarations are, when we declare char
as “string*20+“, 20 bytes of memory space is allocated for holding
the string value.
When we declare char as “string*+“, memory space will be allocated
as per the requirement during execution of the program.
36. Example program for C string:
#include <stdio.h>
int main ()
{
char string*20+ = “hello ";
printf("The string is : %s n", string );
return 0;
}
Output:
The string is : hello
37. C String functions:
String.h header file supports all the string
functions in C language.
strlen()
strcpy()
strcat()
strcmp()
38. C – strlen() function
strlen( ) function in C gives the length of the given
string. Syntax for strlen( ) function is given below.
size_t strlen ( const char * str );
strlen( ) function counts the number of characters
in a given string and returns the integer value.
It stops counting the character when null
character is found. Because, null character
indicates the end of the string in C.
39. C – strcpy() function
strcpy( ) function copies contents of one string
into another string. Syntax for strcpy function is
given below.
char * strcpy ( char * destination, const char *
source );
Example:
strcpy ( str1, str2) – It copies contents of str2 into
str1.
strcpy ( str2, str1) – It copies contents of str1 into
str2.
40. C – strncat() function
• strncat( ) function in C language concatenates (
appends ) portion of one string at the end of another
string. Syntax for strncat( ) function is given below.
• char * strncat ( char * destination, const char * source,
size_t num );
• Example :
• strncat ( str2, str1, 3 ); – First 3 characters of str1 is
concatenated at the end of str2.
strncat ( str1, str2, 3 ); - First 3 characters of str2 is
concatenated at the end of str1.
• As you know, each string in C is ended up with null
character (‘0′).
41. C – strcmp() function
• strcmp( ) function in C compares two given
strings and returns zero if they are same.
• If length of string1 < string2, it returns < 0
value. If length of string1 > string2, it returns > 0
value. Syntax for strcmp( ) function is given
below.
• int strcmp ( const char * str1, const char * str2 );
• strcmp( ) function is case sensitive. i.e, “A” and
“a” are treated as different characters.
42. C – Pointer
• C Pointer is a variable that stores/points the
address of the another variable.
• C Pointer is used to allocate memory dynamically
i.e. at run time.
• The variable might be any of the data type such
as int, float, char, double, short etc.
• Syntax : data_type *var_name;
Example : int *p; char *p;
• Where, * is used to denote that “p” is pointer
variable and not a normal variable.
43. Example program for pointer in C:
#include <stdio.h>
int main()
{
int *ptr, q;
q = 50;
/* address of q is assigned to ptr */
ptr = &q;
/* display q's value using ptr variable */
printf("%d", *ptr);
return 0;
}
• Output:
50
44. What is Function
A function is self-contained block of statements
that perform a coherent task of some kind.
function is something like hiring a person to do
a specific job for you.
A large C program is divided into basic building
blocks called C function. C function contains set
of instructions enclosed by “, -” which performs
specific operation in a C program. Actually,
Collection of these functions creates a C program.
45. example program for C function:
#include<stdio.h>
float square ( float x ); // function prototype, also called function declaration
int main( ) // main function, program starts from here
{ float m, n ;
printf ( "nEnter some number for finding square n");
scanf ( "%f", &m ) ;
// function call
n = square ( m ) ;
printf ( "nSquare of the given number %f is %f",m,n );
}
float square ( float x ) // function definition
{
float p ;
p = x * x ;
return ( p ) ;
}
• Output- Enter some number for finding square 2
Square of the given number 2.000000 is 4.000000
46. C – Structure
• C Structure is a collection of different data types
which are grouped together and each element in
a C structure is called member.
• If you want to access structure members in C,
structure variable should be declared.
• Many structure variables can be declared for
same structure and memory will be allocated for
each separately.
• It is a best practice to initialize a structure to null
while declaring, if we don’t assign any values to
structure members.
47. Example program for C structure:
#include <stdio.h>
#include <string.h>
struct student
{
int id;
char name[20];
float percentage;
};
int main()
{
struct student record = {0}; //Initializing to null
record.id=1;
strcpy(record.name, "Ram");
record.percentage = 86.5;
printf(" Id is: %d n", record.id);
printf(" Name is: %s n", record.name);
printf(" Percentage is: %f n", record.percentage);
return 0;
}
• Output:
Id is: 1
Name is: Ram
Percentage is: 86.500000