SlideShare a Scribd company logo
1 of 23
Download to read offline
INTRODUCTION
CHAPTER 1
C is a general-purpose programming language that
was developed in 1972 by Dennis Ritchie at Bell Labs.
The development of C was closely tied to the
development of the Unix operating system, which was
being created at Bell Labs at the time.
HISTORY OF C
The origins of C can be traced back to the mid-1960s,
when Martin Richards developed a high-level
computer language called BCPL (Basic Combined
Programming Language). BCPL was intended to be
used for writing operating systems, and many of the
concepts that were later inherited by C, such as arrays,
were first developed in BCPL.
In the late 1960s, Ken Thompson, who was also
working at Bell Labs, developed a new version of BCPL
called B. B was a significant improvement over BCPL,
but was still considered to be a "mid-level" language,
as it did not provide many of the features that are now
considered to be standard in modern programming
languages.
In the early 1970s, Dennis Ritchie began working on a
new version of B, which he intended to be a more
powerful and efficient language. He named this new
language C, as it was a significant improvement over B.
C was first used for the development of the Unix
operating system, and quickly became popular among
Unix programmers. In 1978, Brian Kernighan and
Dennis Ritchie published "The C Programming
Language", which became known as the "C Bible" and
helped to spread the use of C to other systems and
applications.
INTRODUCTION TO C
C is a general-purpose, high-level programming
language that was first developed by Dennis Ritchie in
the early 1970s. It was designed to be a portable,
efficient, and flexible language that could be used for a
wide range of purposes, from system programming to
application development. C is known for its low-level
access to memory and its ability to handle multiple
tasks at once, making it a popular choice for operating
systems, embedded systems, and other performance-
critical applications.
C is a high-level programming language that
resembles algebraic expressions and has features for
lower-level systems programming and applications
programming. It contains keywords such as "if", "else",
"for", "do", and "while". It bridges the gap between
machine language and conventional high-level
languages, allowing it to be used for both systems
programming (e.g. operating systems) and
applications programming (e.g. mathematical
equations or billing customers).
It is also widely used in the development of other
programming languages and tools. Despite its age, C
remains a widely-used and powerful programming
language, with a large and active community of
developers around the world.
C is considered a procedural programming language. It
is based on the concept of procedures or functions,
which are executed sequentially. A C program is
typically divided into functions, which are blocks of
code that perform a specific task. These functions are
called one after the other to accomplish the overall
program. In procedural programming, the program is
composed of a series of procedures, and the flow of
control is determined by calling these procedures in a
specific order.
IMPORTANT OF PROGRAM
Widely used: C is one of the most widely used programming
languages in the world, and it is the foundation of many other
programming languages and tools.
Systems programming: C also has features for lower-level language
and gives the programmer a lot of control over memory management
and system resources. This makes it well-suited for tasks such as
operating system development, device drivers, and other systems-
level programming.
Portability: C is designed to be portable, meaning that it can be easily
adapted to different hardware and operating systems. This makes it a
great choice for cross-platform development.
Performance: C is a compiled language, which means that it is
translated into machine code before it is executed. This makes it a
very efficient language, with relatively fast execution times.
Large Community: C has a large community of developers around the
world, which means that there are many resources available for
learning and troubleshooting.
Embedded systems: C is widely used in embedded systems
development, which include microcontrollers, embedded Linux and
other types of systems that require low-level control and
optimization.
Legacy systems: Many existing software systems are written in C, and
they are still in use today. Therefore, knowledge of C is important for
maintaining and updating these systems.
C's simplicity: C has a relatively simple and straightforward syntax
which makes it easy to learn and understand, and it is also relatively
easy to debug.
DESIRED PROGRAM CHARACTERISTICS
Characterstic Description
Integrity The accuracy of the calculations is of utmost
importance and should be maintained at all times. All
other program enhancements are meaningless if the
calculations are not carried out correctly.
Clarity Clarity in programming refers to the ease of
understanding the code, logic, and structure. A clear
program is readable, well-organized, and follows a
consistent structure, making it easier for other
programmers to understand and for the original
author to maintain. The design of the C programming
language emphasizes clear and readable code
through a disciplined approach to programming.
Characterstic Description
Simplicity Simplicity is an important principle in programming.
A simple program is easier to understand, maintain,
and debug, leading to better clarity and accuracy.
Sometimes, it may be necessary to trade off some
computational efficiency for simplicity in the
program structure. This can result in a clearer, more
straightforward program.
Efficiency Efficiency refers to the speed and memory usage of a
program. While these are important goals, they
should not compromise clarity and simplicity.
Balancing the tradeoff between efficiency, clarity,
and simplicity often requires experience and good
judgement.
Characterstic Description
Modularity Modular programming involves dividing a program
into smaller, independent modules or functions that
each perform a specific subtask. This enhances the
accuracy, clarity, and organization of the program,
and makes it easier to maintain and modify in the
future. In C, these modules are implemented as
functions. Modular programming leads to improved
structure and readability of a program.
Generality Generality in programming refers to the ability of a
program to handle a wide range of inputs and
situations, rather than being limited to a specific set
of fixed values. A program that is designed to be
general is more flexible, reusable, and adaptable to
changing requirements. The objective is to create a
program that can be used in many different contexts,
with a minimum of modification. With relatively little
effort, a program can often be made quite general,
enhancing its value and utility.
FUN FACT
NASA STILL OPERATES SOME PROJECTS ON
PROGRAMMING FROM THE 1970’S
Introduction to C Programming (1).pdf

More Related Content

What's hot

C programming presentation for university
C programming presentation for universityC programming presentation for university
C programming presentation for universitySheikh Monirul Hasan
 
Software Engineering ppt
Software Engineering pptSoftware Engineering ppt
Software Engineering pptshruths2890
 
Application Software
Application SoftwareApplication Software
Application Softwarepy7rjs
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software EngineeringKourosh Sajjadi
 
Converter - C- Language Program
Converter - C- Language ProgramConverter - C- Language Program
Converter - C- Language ProgramZuhaib Ali
 
system software and application software, compiler, interpreter & assembler
system software  and application software, compiler, interpreter & assemblersystem software  and application software, compiler, interpreter & assembler
system software and application software, compiler, interpreter & assemblerchetan birla
 
Introduction to c language | History of C language
Introduction to c language | History of C languageIntroduction to c language | History of C language
Introduction to c language | History of C languagesimplidigital
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressmanRohitGoyal183
 
Waterfall and spiral model
Waterfall and spiral modelWaterfall and spiral model
Waterfall and spiral modelyenohhoney
 
introduction to programming languages
introduction to programming languagesintroduction to programming languages
introduction to programming languagesNaqashAhmad14
 
Chapter 01 Planning Computer Program (re-upload)
Chapter 01 Planning Computer Program (re-upload)Chapter 01 Planning Computer Program (re-upload)
Chapter 01 Planning Computer Program (re-upload)bluejayjunior
 

What's hot (20)

Ch04 agile development models
Ch04 agile development modelsCh04 agile development models
Ch04 agile development models
 
C programming presentation for university
C programming presentation for universityC programming presentation for university
C programming presentation for university
 
Software Engineering ppt
Software Engineering pptSoftware Engineering ppt
Software Engineering ppt
 
Spiral model ppt
Spiral model pptSpiral model ppt
Spiral model ppt
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
C programming
C programmingC programming
C programming
 
Application Software
Application SoftwareApplication Software
Application Software
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software Engineering
 
Converter - C- Language Program
Converter - C- Language ProgramConverter - C- Language Program
Converter - C- Language Program
 
system software and application software, compiler, interpreter & assembler
system software  and application software, compiler, interpreter & assemblersystem software  and application software, compiler, interpreter & assembler
system software and application software, compiler, interpreter & assembler
 
Introduction to c language | History of C language
Introduction to c language | History of C languageIntroduction to c language | History of C language
Introduction to c language | History of C language
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
RAD Model
RAD ModelRAD Model
RAD Model
 
Algorithmic Software Cost Modeling
Algorithmic Software Cost ModelingAlgorithmic Software Cost Modeling
Algorithmic Software Cost Modeling
 
Waterfall and spiral model
Waterfall and spiral modelWaterfall and spiral model
Waterfall and spiral model
 
Lecture 1- History of C Programming
Lecture 1- History of C Programming Lecture 1- History of C Programming
Lecture 1- History of C Programming
 
introduction to programming languages
introduction to programming languagesintroduction to programming languages
introduction to programming languages
 
Chapter 01 Planning Computer Program (re-upload)
Chapter 01 Planning Computer Program (re-upload)Chapter 01 Planning Computer Program (re-upload)
Chapter 01 Planning Computer Program (re-upload)
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimation
 
Programming in c
Programming in cProgramming in c
Programming in c
 

Similar to Introduction to C Programming (1).pdf

D turner techreport
D turner techreportD turner techreport
D turner techreportdavid114811
 
20210417-cppRelevancy-DataStructures.pptx
20210417-cppRelevancy-DataStructures.pptx20210417-cppRelevancy-DataStructures.pptx
20210417-cppRelevancy-DataStructures.pptxSuman Garai
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageRamaBoya2
 
Why C is Called Structured Programming Language
Why C is Called Structured Programming LanguageWhy C is Called Structured Programming Language
Why C is Called Structured Programming LanguageSinbad Konick
 
The Importance of C Language in the Tech Industry.pdf
The Importance of C Language in the Tech Industry.pdfThe Importance of C Language in the Tech Industry.pdf
The Importance of C Language in the Tech Industry.pdfSaniyaSharma28
 
Programming Language
Programming LanguageProgramming Language
Programming LanguageFahad Khan
 
C Programming language - introduction
C Programming  language - introduction  C Programming  language - introduction
C Programming language - introduction GopikaS12
 
Introduction to embedded c
Introduction to embedded cIntroduction to embedded c
Introduction to embedded cGokuldhev mony
 
C language part 1
C language part  1C language part  1
C language part 1JyothiG33
 
TCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdf
TCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdfTCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdf
TCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdfAbhishekMGowda4
 

Similar to Introduction to C Programming (1).pdf (20)

What is C.docx
What is C.docxWhat is C.docx
What is C.docx
 
D turner techreport
D turner techreportD turner techreport
D turner techreport
 
Introduction to c
Introduction to cIntroduction to c
Introduction to c
 
C basic
C basicC basic
C basic
 
20210417-cppRelevancy-DataStructures.pptx
20210417-cppRelevancy-DataStructures.pptx20210417-cppRelevancy-DataStructures.pptx
20210417-cppRelevancy-DataStructures.pptx
 
C Language
C LanguageC Language
C Language
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 
Why C is Called Structured Programming Language
Why C is Called Structured Programming LanguageWhy C is Called Structured Programming Language
Why C is Called Structured Programming Language
 
Programming in c
Programming in cProgramming in c
Programming in c
 
Programming in C
Programming in CProgramming in C
Programming in C
 
The Importance of C Language in the Tech Industry.pdf
The Importance of C Language in the Tech Industry.pdfThe Importance of C Language in the Tech Industry.pdf
The Importance of C Language in the Tech Industry.pdf
 
Programming Language
Programming LanguageProgramming Language
Programming Language
 
C.pdf
C.pdfC.pdf
C.pdf
 
Introduction to c language
Introduction to c language Introduction to c language
Introduction to c language
 
C Programming language - introduction
C Programming  language - introduction  C Programming  language - introduction
C Programming language - introduction
 
Introduction to embedded c
Introduction to embedded cIntroduction to embedded c
Introduction to embedded c
 
C language part 1
C language part  1C language part  1
C language part 1
 
C language part 1
C language part  1C language part  1
C language part 1
 
TCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdf
TCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdfTCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdf
TCS-NQT-Coding-Questions-@-Recruitmentindia.in_.pdf
 
C program
C programC program
C program
 

Recently uploaded

result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 

Recently uploaded (20)

result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 

Introduction to C Programming (1).pdf

  • 2.
  • 3. C is a general-purpose programming language that was developed in 1972 by Dennis Ritchie at Bell Labs. The development of C was closely tied to the development of the Unix operating system, which was being created at Bell Labs at the time.
  • 5. The origins of C can be traced back to the mid-1960s, when Martin Richards developed a high-level computer language called BCPL (Basic Combined Programming Language). BCPL was intended to be used for writing operating systems, and many of the concepts that were later inherited by C, such as arrays, were first developed in BCPL.
  • 6. In the late 1960s, Ken Thompson, who was also working at Bell Labs, developed a new version of BCPL called B. B was a significant improvement over BCPL, but was still considered to be a "mid-level" language, as it did not provide many of the features that are now considered to be standard in modern programming languages.
  • 7. In the early 1970s, Dennis Ritchie began working on a new version of B, which he intended to be a more powerful and efficient language. He named this new language C, as it was a significant improvement over B.
  • 8. C was first used for the development of the Unix operating system, and quickly became popular among Unix programmers. In 1978, Brian Kernighan and Dennis Ritchie published "The C Programming Language", which became known as the "C Bible" and helped to spread the use of C to other systems and applications.
  • 10. C is a general-purpose, high-level programming language that was first developed by Dennis Ritchie in the early 1970s. It was designed to be a portable, efficient, and flexible language that could be used for a wide range of purposes, from system programming to application development. C is known for its low-level access to memory and its ability to handle multiple tasks at once, making it a popular choice for operating systems, embedded systems, and other performance- critical applications.
  • 11. C is a high-level programming language that resembles algebraic expressions and has features for lower-level systems programming and applications programming. It contains keywords such as "if", "else", "for", "do", and "while". It bridges the gap between machine language and conventional high-level languages, allowing it to be used for both systems programming (e.g. operating systems) and applications programming (e.g. mathematical equations or billing customers).
  • 12. It is also widely used in the development of other programming languages and tools. Despite its age, C remains a widely-used and powerful programming language, with a large and active community of developers around the world.
  • 13. C is considered a procedural programming language. It is based on the concept of procedures or functions, which are executed sequentially. A C program is typically divided into functions, which are blocks of code that perform a specific task. These functions are called one after the other to accomplish the overall program. In procedural programming, the program is composed of a series of procedures, and the flow of control is determined by calling these procedures in a specific order.
  • 15. Widely used: C is one of the most widely used programming languages in the world, and it is the foundation of many other programming languages and tools. Systems programming: C also has features for lower-level language and gives the programmer a lot of control over memory management and system resources. This makes it well-suited for tasks such as operating system development, device drivers, and other systems- level programming. Portability: C is designed to be portable, meaning that it can be easily adapted to different hardware and operating systems. This makes it a great choice for cross-platform development. Performance: C is a compiled language, which means that it is translated into machine code before it is executed. This makes it a very efficient language, with relatively fast execution times.
  • 16. Large Community: C has a large community of developers around the world, which means that there are many resources available for learning and troubleshooting. Embedded systems: C is widely used in embedded systems development, which include microcontrollers, embedded Linux and other types of systems that require low-level control and optimization. Legacy systems: Many existing software systems are written in C, and they are still in use today. Therefore, knowledge of C is important for maintaining and updating these systems. C's simplicity: C has a relatively simple and straightforward syntax which makes it easy to learn and understand, and it is also relatively easy to debug.
  • 18. Characterstic Description Integrity The accuracy of the calculations is of utmost importance and should be maintained at all times. All other program enhancements are meaningless if the calculations are not carried out correctly. Clarity Clarity in programming refers to the ease of understanding the code, logic, and structure. A clear program is readable, well-organized, and follows a consistent structure, making it easier for other programmers to understand and for the original author to maintain. The design of the C programming language emphasizes clear and readable code through a disciplined approach to programming.
  • 19. Characterstic Description Simplicity Simplicity is an important principle in programming. A simple program is easier to understand, maintain, and debug, leading to better clarity and accuracy. Sometimes, it may be necessary to trade off some computational efficiency for simplicity in the program structure. This can result in a clearer, more straightforward program. Efficiency Efficiency refers to the speed and memory usage of a program. While these are important goals, they should not compromise clarity and simplicity. Balancing the tradeoff between efficiency, clarity, and simplicity often requires experience and good judgement.
  • 20. Characterstic Description Modularity Modular programming involves dividing a program into smaller, independent modules or functions that each perform a specific subtask. This enhances the accuracy, clarity, and organization of the program, and makes it easier to maintain and modify in the future. In C, these modules are implemented as functions. Modular programming leads to improved structure and readability of a program. Generality Generality in programming refers to the ability of a program to handle a wide range of inputs and situations, rather than being limited to a specific set of fixed values. A program that is designed to be general is more flexible, reusable, and adaptable to changing requirements. The objective is to create a program that can be used in many different contexts,
  • 21. with a minimum of modification. With relatively little effort, a program can often be made quite general, enhancing its value and utility.
  • 22. FUN FACT NASA STILL OPERATES SOME PROJECTS ON PROGRAMMING FROM THE 1970’S