SlideShare a Scribd company logo
Introduction to ‘C’
Compiled By :
Abhishek Sinha (MBA-IT, MCA)
Director – Academics
Concept Institute of Technology, Varanasi.
Website: www.conceptvns.org
What is C ? - Programming Language
 Language is a medium of communication. It
is a system for encoding & decoding
information.
 Program is a set of instructions to be
followed in a particular fashion to
accomplish a particular task.
 Programming is a process to develop a
program
A Programming Language is an
artificial language designed to express
computations that can be performed
by a machine, particularly a
computer.
Brief Introduction of C
 C is a programming language that follows the
philosophy of POP (Procedural Oriented
Programming) categorized under High Level
Language (some times under Middle Level
Language).
 Developed by “Dennis Ritchie” in the year
1972 at AT & T Bell Laboratory, USA.
 It uses Compiler as a language translator to
convert C instruction to executable code.
Historical Development of C
Year Language Developer Remarks
1960 ALGOL International
Committee
Too general,
too abstract
1963 CPL Cambridge
University
Hard to learn,
difficult to implement
1967 BCPL Martin Richards,
Cambridge
University
Could deal with only
specific problems
1970 B Ken Thompson,
AT & T
Could deal with only
specific problems
1972 C Dennis Ritchie,
AT & T
Lost generality of
BCPL & B restored
ALGOL : Algorithmic Language
CPL : Combined Programming Language
BCPL : Basic Combined Programming Language
Basic Building Blocks
 Variables: ‘the values which can be changed
or changes itself’, e.g. salary, age, time etc..
 Constants: ‘the values which neither can be
changed nor changes itself’, e.g. PIE,
G(gravitational constant), g (gravitational
acceleration) etc..
 Identifiers: ‘it is the name given to a value
by which we can identify whether it is a
variable or a constant’
 Keywords: ‘reserved words whose meaning
is predefined to the complier & whenever
compiler comes across those words, it does
the appropriate task’. 32 reserved words are
there in C such as goto, break, continue,
return, void etc..
 Operators: are the special symbols which
when applied on operands, gives us some
manipulated result, and result depends on
type of operator applied.
 Operator Types:
Can be categorized on the basis of two criteria's:
a) No of Operands
b) Operation Performed
• Unary Operator (1 operand)
• Binary Operator (2 operand)
• Ternary Operator (3 operand)
• Arithmetic Operator (+, -, *, /, %)
• Assignment Operator (=)
• Relational Operator (<, <=, ==, >, >=, !=)
• Logical Operator (&&, ||, !)
• Conditional Operator ( ? :)
• Increment/Decrement Operator (++, --)
• Bitwise Operator (&, |, ~, ^, <<, >>)
• Some Special Operators ( [], (), *, ., ->,
malloc, calloc, realloc, sizeof, free)
 Data Type: Tells us about three facts that a
programmer must know and is very
important:
• Type of value we can work on C Language
• Memory space required to store that value
(size depends on Operating System)
• Range of value it can store in that space
Making the use of these facts programmer
reserves the space for its data accordingly.
We can categorize Data Type in two flavors
•Primary Data Type
•Numeric
•Integer
•Short
•Signed
•Unsigned
•Long
•Real
•Float
•Double
•Long Double
•Non Numeric
•Character
•Signed
•Unsigned
•String (implemented as array)
•Secondary Data Type
•Derived Data Type
•Array
•Pointer
•Function
•User Defined Data Type
•Structure
•Union
•Enum
*At this stage our concern topic is Primary Data Type
Integer – denoted as int – by default it is signed int
Type Size (in bytes) Range Format String
short int 2 -32768 to +32767 %d
signed int 2 -32768 to +32767 %d
unsigned int 2 0 to 65535 %u
long int 4 -2147483648 to +2147483647 %ld
Real
Type Size (in bytes) Range Format String
float 4 3.4e-38 to 3.4e+38 %f
double 4 1.7e-308 to 1.7e+308 %lf
long double 8 3.4e-4932 to 3.4e+4932 %le
Character – denoted as char – by default it is signed char
Type Size (in bytes) Range Format String
signed char 1 -128 to +127 %c
unsigned char 1 0 to 255 %c
 Variable Declaration: A process to reserve
space in memory for data values, where
those space are identified by the name of
the variable for further reference.
Syntax: <data_type> <variable_name>;
Example: int age; // by default takes signed int
This very statement makes the compiler to reserve
two byte of space in memory and identifies it with the
name age.
age name of location
location in memory
102 base address of location
MEMORY REPRESENTATION
 Variable Initialization: A process to assign
initial value to a variable at the time of
declaration. By default it takes garbage
value (depends on storage class specifier)
Syntax:
<data_type> <variable_name> = <initial_value>;
Example: int age = 10;
This very statement makes the compiler to reserve
two byte of space in memory and identifies it with the
name age and assigns 10 as its initial value.
age name of location
location in memory
102 base address of location
MEMORY REPRESENTATION
10
C Program Structure
Statements Example
1. Documentation / Commnet Section /*Sample Program*/
2. Header File Inclusion #include<stdio.h>
3. Macro Definition #define MAX 10
4. Global Variable Declaration int x;
5. Sub-function(s) <RT> <Function Name>(<AL>)
{
//body of function
}
6. Main function main()
{
//body of main
}
Compilation Process
Source code (.c) Object code (.obj)
Expanded code (.i )
Assembly code (.asm) Executable code (.exe)
Pre-Processing
Compiling
Assembling
Linking & Loading
Making
First of all we make our source file with an
extension .c, now the code is expanded based on
Preprocessor Directives used and is stored in a
file having .i extension. From this code compiler
checks for syntax errors. If it is error free,
compiler converts it to the assembly language of
the machine being used. This is stored in file
having .asm extension. Now the assembler
creates .obj file. Then linking and loading
software makes the link with other files if
included in source code and those files are
loaded in memory. Now the making process
creates .exe file which is executed/run and gives
our output. Meanwhile at back scene another
file is created having .bak extension which keeps
the back-up of source code.
END OF CHAPTER ONE
Send your feedback/queries at
abhisheksinha786@gmail.com

More Related Content

What's hot (20)

PPTX
Data Input and Output
Sabik T S
 
PPT
CPU INPUT OUTPUT
Aditya Vaishampayan
 
PPTX
Managing input and output operations in c
niyamathShariff
 
PPTX
Introduction to Basic C programming 02
Wingston
 
PPTX
Introduction to C programming
Sabik T S
 
PPTX
Input output statement in C
Muthuganesh S
 
PPTX
C programming(Part 1)
Dr. SURBHI SAROHA
 
PDF
7 functions
MomenMostafa
 
PDF
1 introducing c language
MomenMostafa
 
DOCX
Important C program of Balagurusamy Book
Abir Hossain
 
PPTX
Programming in C (part 2)
Dr. SURBHI SAROHA
 
PPTX
C introduction by thooyavan
Thooyavan Venkatachalam
 
PPTX
C Programming Language Part 6
Rumman Ansari
 
PPTX
C programming(part 3)
Dr. SURBHI SAROHA
 
PDF
4 operators, expressions &amp; statements
MomenMostafa
 
PPTX
Decision making and branching
Saranya saran
 
PPTX
Expressions using operator in c
Saranya saran
 
DOCX
UNIT-II CP DOC.docx
JavvajiVenkat
 
Data Input and Output
Sabik T S
 
CPU INPUT OUTPUT
Aditya Vaishampayan
 
Managing input and output operations in c
niyamathShariff
 
Introduction to Basic C programming 02
Wingston
 
Introduction to C programming
Sabik T S
 
Input output statement in C
Muthuganesh S
 
C programming(Part 1)
Dr. SURBHI SAROHA
 
7 functions
MomenMostafa
 
1 introducing c language
MomenMostafa
 
Important C program of Balagurusamy Book
Abir Hossain
 
Programming in C (part 2)
Dr. SURBHI SAROHA
 
C introduction by thooyavan
Thooyavan Venkatachalam
 
C Programming Language Part 6
Rumman Ansari
 
C programming(part 3)
Dr. SURBHI SAROHA
 
4 operators, expressions &amp; statements
MomenMostafa
 
Decision making and branching
Saranya saran
 
Expressions using operator in c
Saranya saran
 
UNIT-II CP DOC.docx
JavvajiVenkat
 

Similar to Programming in C [Module One] (20)

DOCX
Let's us c language (sabeel Bugti)
Unviersity of balochistan quetta
 
ODP
CProgrammingTutorial
Muthuselvam RS
 
PPTX
C language
Rupanshi rawat
 
PPTX
Lec 02 Introduction to C Programming.pptx
warriorbotscomp
 
PPTX
c-introduction.pptx
Mangala R
 
PDF
Basic Information About C language PDF
Suraj Das
 
PDF
C programming language tutorial for beginers.pdf
ComedyTechnology
 
PPSX
Lecture 2
Mahfuzur Rahman
 
DOCX
C notes
Raunak Sodhi
 
PPT
C material
tarique472
 
DOCX
C LANGUAGE NOTES
Malikireddy Bramhananda Reddy
 
PDF
C programming Ms. Pranoti Doke
Pranoti Doke
 
PDF
67404923-C-Programming-Tutorials-Doc.pdf
Rajb54
 
PDF
introduction to programming using ANSI C
JNTUK KAKINADA
 
PPT
cs8251 unit 1 ppt
praveenaprakasam
 
PPTX
C PROGRAMMING LANGUAGE.pptx
AnshSrivastava48
 
PPTX
C programming Training in Ambala ! Batra Computer Centre
jatin batra
 
PPTX
LESSON1-C_programming (1).GRADE 8 LESSONpptx
joachimbenedicttulau
 
PPTX
C language
Mukul Kirti Verma
 
PDF
C programming_MSBTE_Diploma_Pranoti Doke
Pranoti Doke
 
Let's us c language (sabeel Bugti)
Unviersity of balochistan quetta
 
CProgrammingTutorial
Muthuselvam RS
 
C language
Rupanshi rawat
 
Lec 02 Introduction to C Programming.pptx
warriorbotscomp
 
c-introduction.pptx
Mangala R
 
Basic Information About C language PDF
Suraj Das
 
C programming language tutorial for beginers.pdf
ComedyTechnology
 
Lecture 2
Mahfuzur Rahman
 
C notes
Raunak Sodhi
 
C material
tarique472
 
C programming Ms. Pranoti Doke
Pranoti Doke
 
67404923-C-Programming-Tutorials-Doc.pdf
Rajb54
 
introduction to programming using ANSI C
JNTUK KAKINADA
 
cs8251 unit 1 ppt
praveenaprakasam
 
C PROGRAMMING LANGUAGE.pptx
AnshSrivastava48
 
C programming Training in Ambala ! Batra Computer Centre
jatin batra
 
LESSON1-C_programming (1).GRADE 8 LESSONpptx
joachimbenedicttulau
 
C language
Mukul Kirti Verma
 
C programming_MSBTE_Diploma_Pranoti Doke
Pranoti Doke
 
Ad

Recently uploaded (20)

PDF
DIGESTION OF CARBOHYDRATES,PROTEINS,LIPIDS
raviralanaresh2
 
PDF
0725.WHITEPAPER-UNIQUEWAYSOFPROTOTYPINGANDUXNOW.pdf
Thomas GIRARD, MA, CDP
 
PPTX
MENINGITIS: NURSING MANAGEMENT, BACTERIAL MENINGITIS, VIRAL MENINGITIS.pptx
PRADEEP ABOTHU
 
PDF
Aprendendo Arquitetura Framework Salesforce - Dia 03
Mauricio Alexandre Silva
 
PPTX
Identifying elements in the story. Arrange the events in the story
geraldineamahido2
 
PDF
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
PPTX
PPT-Q1-WEEK-3-SCIENCE-ERevised Matatag Grade 3.pptx
reijhongidayawan02
 
PPTX
PPT-Q1-WK-3-ENGLISH Revised Matatag Grade 3.pptx
reijhongidayawan02
 
PPTX
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
PPTX
QUARTER 1 WEEK 2 PLOT, POV AND CONFLICTS
KynaParas
 
PDF
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
PDF
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
PPT
Talk on Critical Theory, Part One, Philosophy of Social Sciences
Soraj Hongladarom
 
PPTX
Stereochemistry-Optical Isomerism in organic compoundsptx
Tarannum Nadaf-Mansuri
 
PPTX
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
PPTX
How to Create Odoo JS Dialog_Popup in Odoo 18
Celine George
 
PDF
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
PDF
Dimensions of Societal Planning in Commonism
StefanMz
 
PDF
Knee Extensor Mechanism Injuries - Orthopedic Radiologic Imaging
Sean M. Fox
 
PDF
Exploring the Different Types of Experimental Research
Thelma Villaflores
 
DIGESTION OF CARBOHYDRATES,PROTEINS,LIPIDS
raviralanaresh2
 
0725.WHITEPAPER-UNIQUEWAYSOFPROTOTYPINGANDUXNOW.pdf
Thomas GIRARD, MA, CDP
 
MENINGITIS: NURSING MANAGEMENT, BACTERIAL MENINGITIS, VIRAL MENINGITIS.pptx
PRADEEP ABOTHU
 
Aprendendo Arquitetura Framework Salesforce - Dia 03
Mauricio Alexandre Silva
 
Identifying elements in the story. Arrange the events in the story
geraldineamahido2
 
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
PPT-Q1-WEEK-3-SCIENCE-ERevised Matatag Grade 3.pptx
reijhongidayawan02
 
PPT-Q1-WK-3-ENGLISH Revised Matatag Grade 3.pptx
reijhongidayawan02
 
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
QUARTER 1 WEEK 2 PLOT, POV AND CONFLICTS
KynaParas
 
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
Talk on Critical Theory, Part One, Philosophy of Social Sciences
Soraj Hongladarom
 
Stereochemistry-Optical Isomerism in organic compoundsptx
Tarannum Nadaf-Mansuri
 
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
How to Create Odoo JS Dialog_Popup in Odoo 18
Celine George
 
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
Dimensions of Societal Planning in Commonism
StefanMz
 
Knee Extensor Mechanism Injuries - Orthopedic Radiologic Imaging
Sean M. Fox
 
Exploring the Different Types of Experimental Research
Thelma Villaflores
 
Ad

Programming in C [Module One]

  • 1. Introduction to ‘C’ Compiled By : Abhishek Sinha (MBA-IT, MCA) Director – Academics Concept Institute of Technology, Varanasi. Website: www.conceptvns.org
  • 2. What is C ? - Programming Language  Language is a medium of communication. It is a system for encoding & decoding information.  Program is a set of instructions to be followed in a particular fashion to accomplish a particular task.  Programming is a process to develop a program
  • 3. A Programming Language is an artificial language designed to express computations that can be performed by a machine, particularly a computer.
  • 4. Brief Introduction of C  C is a programming language that follows the philosophy of POP (Procedural Oriented Programming) categorized under High Level Language (some times under Middle Level Language).  Developed by “Dennis Ritchie” in the year 1972 at AT & T Bell Laboratory, USA.  It uses Compiler as a language translator to convert C instruction to executable code.
  • 5. Historical Development of C Year Language Developer Remarks 1960 ALGOL International Committee Too general, too abstract 1963 CPL Cambridge University Hard to learn, difficult to implement 1967 BCPL Martin Richards, Cambridge University Could deal with only specific problems 1970 B Ken Thompson, AT & T Could deal with only specific problems 1972 C Dennis Ritchie, AT & T Lost generality of BCPL & B restored ALGOL : Algorithmic Language CPL : Combined Programming Language BCPL : Basic Combined Programming Language
  • 6. Basic Building Blocks  Variables: ‘the values which can be changed or changes itself’, e.g. salary, age, time etc..  Constants: ‘the values which neither can be changed nor changes itself’, e.g. PIE, G(gravitational constant), g (gravitational acceleration) etc..  Identifiers: ‘it is the name given to a value by which we can identify whether it is a variable or a constant’
  • 7.  Keywords: ‘reserved words whose meaning is predefined to the complier & whenever compiler comes across those words, it does the appropriate task’. 32 reserved words are there in C such as goto, break, continue, return, void etc..  Operators: are the special symbols which when applied on operands, gives us some manipulated result, and result depends on type of operator applied.
  • 8.  Operator Types: Can be categorized on the basis of two criteria's: a) No of Operands b) Operation Performed • Unary Operator (1 operand) • Binary Operator (2 operand) • Ternary Operator (3 operand) • Arithmetic Operator (+, -, *, /, %) • Assignment Operator (=) • Relational Operator (<, <=, ==, >, >=, !=) • Logical Operator (&&, ||, !) • Conditional Operator ( ? :) • Increment/Decrement Operator (++, --) • Bitwise Operator (&, |, ~, ^, <<, >>) • Some Special Operators ( [], (), *, ., ->, malloc, calloc, realloc, sizeof, free)
  • 9.  Data Type: Tells us about three facts that a programmer must know and is very important: • Type of value we can work on C Language • Memory space required to store that value (size depends on Operating System) • Range of value it can store in that space Making the use of these facts programmer reserves the space for its data accordingly.
  • 10. We can categorize Data Type in two flavors •Primary Data Type •Numeric •Integer •Short •Signed •Unsigned •Long •Real •Float •Double •Long Double •Non Numeric •Character •Signed •Unsigned •String (implemented as array) •Secondary Data Type •Derived Data Type •Array •Pointer •Function •User Defined Data Type •Structure •Union •Enum *At this stage our concern topic is Primary Data Type
  • 11. Integer – denoted as int – by default it is signed int Type Size (in bytes) Range Format String short int 2 -32768 to +32767 %d signed int 2 -32768 to +32767 %d unsigned int 2 0 to 65535 %u long int 4 -2147483648 to +2147483647 %ld Real Type Size (in bytes) Range Format String float 4 3.4e-38 to 3.4e+38 %f double 4 1.7e-308 to 1.7e+308 %lf long double 8 3.4e-4932 to 3.4e+4932 %le Character – denoted as char – by default it is signed char Type Size (in bytes) Range Format String signed char 1 -128 to +127 %c unsigned char 1 0 to 255 %c
  • 12.  Variable Declaration: A process to reserve space in memory for data values, where those space are identified by the name of the variable for further reference. Syntax: <data_type> <variable_name>; Example: int age; // by default takes signed int This very statement makes the compiler to reserve two byte of space in memory and identifies it with the name age. age name of location location in memory 102 base address of location MEMORY REPRESENTATION
  • 13.  Variable Initialization: A process to assign initial value to a variable at the time of declaration. By default it takes garbage value (depends on storage class specifier) Syntax: <data_type> <variable_name> = <initial_value>; Example: int age = 10; This very statement makes the compiler to reserve two byte of space in memory and identifies it with the name age and assigns 10 as its initial value. age name of location location in memory 102 base address of location MEMORY REPRESENTATION 10
  • 14. C Program Structure Statements Example 1. Documentation / Commnet Section /*Sample Program*/ 2. Header File Inclusion #include<stdio.h> 3. Macro Definition #define MAX 10 4. Global Variable Declaration int x; 5. Sub-function(s) <RT> <Function Name>(<AL>) { //body of function } 6. Main function main() { //body of main }
  • 15. Compilation Process Source code (.c) Object code (.obj) Expanded code (.i ) Assembly code (.asm) Executable code (.exe) Pre-Processing Compiling Assembling Linking & Loading Making
  • 16. First of all we make our source file with an extension .c, now the code is expanded based on Preprocessor Directives used and is stored in a file having .i extension. From this code compiler checks for syntax errors. If it is error free, compiler converts it to the assembly language of the machine being used. This is stored in file having .asm extension. Now the assembler creates .obj file. Then linking and loading software makes the link with other files if included in source code and those files are loaded in memory. Now the making process creates .exe file which is executed/run and gives our output. Meanwhile at back scene another file is created having .bak extension which keeps the back-up of source code.
  • 17. END OF CHAPTER ONE Send your feedback/queries at [email protected]