SlideShare une entreprise Scribd logo
1  sur  17
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

Contenu connexe

Tendances

Tendances (20)

C fundamentals
C fundamentalsC fundamentals
C fundamentals
 
Data Input and Output
Data Input and OutputData Input and Output
Data Input and Output
 
CPU INPUT OUTPUT
CPU INPUT OUTPUT CPU INPUT OUTPUT
CPU INPUT OUTPUT
 
Unit ii ppt
Unit ii pptUnit ii ppt
Unit ii ppt
 
Managing input and output operations in c
Managing input and output operations in cManaging input and output operations in c
Managing input and output operations in c
 
Introduction to Basic C programming 02
Introduction to Basic C programming 02Introduction to Basic C programming 02
Introduction to Basic C programming 02
 
Introduction to C programming
Introduction to C programmingIntroduction to C programming
Introduction to C programming
 
Input output statement in C
Input output statement in CInput output statement in C
Input output statement in C
 
C programming(Part 1)
C programming(Part 1)C programming(Part 1)
C programming(Part 1)
 
7 functions
7  functions7  functions
7 functions
 
1 introducing c language
1  introducing c language1  introducing c language
1 introducing c language
 
Important C program of Balagurusamy Book
Important C program of Balagurusamy BookImportant C program of Balagurusamy Book
Important C program of Balagurusamy Book
 
Programming in C (part 2)
Programming in C (part 2)Programming in C (part 2)
Programming in C (part 2)
 
C introduction by thooyavan
C introduction by  thooyavanC introduction by  thooyavan
C introduction by thooyavan
 
C Programming Language Part 6
C Programming Language Part 6C Programming Language Part 6
C Programming Language Part 6
 
C programming(part 3)
C programming(part 3)C programming(part 3)
C programming(part 3)
 
4 operators, expressions &amp; statements
4  operators, expressions &amp; statements4  operators, expressions &amp; statements
4 operators, expressions &amp; statements
 
Decision making and branching
Decision making and branchingDecision making and branching
Decision making and branching
 
Expressions using operator in c
Expressions using operator in cExpressions using operator in c
Expressions using operator in c
 
UNIT-II CP DOC.docx
UNIT-II CP DOC.docxUNIT-II CP DOC.docx
UNIT-II CP DOC.docx
 

Similaire à Programming in C [Module One]

introductory concepts
introductory conceptsintroductory concepts
introductory concepts
Walepak Ubi
 
67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf
Rajb54
 

Similaire à Programming in C [Module One] (20)

C material
C materialC material
C material
 
Chap 2 c++
Chap 2 c++Chap 2 c++
Chap 2 c++
 
Data Type in C Programming
Data Type in C ProgrammingData Type in C Programming
Data Type in C Programming
 
C
CC
C
 
Presentation c++
Presentation c++Presentation c++
Presentation c++
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
C tutorials
C tutorialsC tutorials
C tutorials
 
C programming language
C programming languageC programming language
C programming language
 
#Code2 create c++ for beginners
#Code2 create  c++ for beginners #Code2 create  c++ for beginners
#Code2 create c++ for beginners
 
Learn c language Important topics ( Easy & Logical, & smart way of learning)
Learn c language Important topics ( Easy & Logical, & smart way of learning)Learn c language Important topics ( Easy & Logical, & smart way of learning)
Learn c language Important topics ( Easy & Logical, & smart way of learning)
 
C notes
C notesC notes
C notes
 
introductory concepts
introductory conceptsintroductory concepts
introductory concepts
 
Fundamentals of Data Structures Unit 1.pptx
Fundamentals of Data Structures Unit 1.pptxFundamentals of Data Structures Unit 1.pptx
Fundamentals of Data Structures Unit 1.pptx
 
The smartpath information systems c pro
The smartpath information systems c proThe smartpath information systems c pro
The smartpath information systems c pro
 
C intro
C introC intro
C intro
 
C programming.pdf
C programming.pdfC programming.pdf
C programming.pdf
 
C LANGUAGE NOTES
C LANGUAGE NOTESC LANGUAGE NOTES
C LANGUAGE NOTES
 
C++ programming language basic to advance level
C++ programming language basic to advance levelC++ programming language basic to advance level
C++ programming language basic to advance level
 
What is Data Types and Functions?
What is Data Types and Functions?What is Data Types and Functions?
What is Data Types and Functions?
 
67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf
 

Dernier

Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 

Dernier (20)

Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 

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 abhisheksinha786@gmail.com