C Programming Part 1
C Programming Part 1
(AUTONOMOUS)
Shamshabad – 501 218, Hyderabad
C
PROGRAMMING
C PROGRAMMING Page 1
UNIT I
Computer systems:
A Computer is an electronic device which performs operations such as accepts data
As an input, store the data, manipulate or process the data and produce the results an output.
Main task performed by a computer
• Accept the data
• Process or manipulate the data
• Display or store the result in the form of human understanding
• Store the data, instructions and results.
Computer hardware is the collection of physical elements that comprise a computer system.
Computer software is a collection of computer programs and related data that provides the
instructions for a computer what to do and how to do it. Software refers to one or more computer
programs and data held in the storage of the computer for some purpose
C PROGRAMMING Page 2
Basically computer software is of three main types
Computing Environment:
C PROGRAMMING Page 3
Client Server Environment
Time sharing Environment
Distributed Environment
Time-Sharing Environment:
In the time-sharing environment, all computing must be done by the central computer. The
central computer the shared resources, it manage the shared data and printing. Employees in
large companies often work in what is known as time sharing environment. In the time sharing
environment, many users are connected to one or more computers. These computers may be mini
computers and central mainframes. In this environment the output devices, auxiliary storage
devices are shared by all the users.
C PROGRAMMING Page 4
Client/Server Environment
Client/Server computing environment splits the computing function between a
central computer and user‟s computers. The users are given personal computers or
work stations so that some of the computation responsibility can be moved from
the central computer and assigned to the workstations. In the client/server
environment the users micro computers or work stations are called the client. The
central computer which may be a powerful micro computer, minicomputer or
central mainframe system is known as server.
C PROGRAMMING Page 5
COMPUTER LANGUAGES
In order to communicate with the computer user also needs to have a language that should be
understood by the computer. For this purpose, different languages are developed for performing
different types of work on the computer. Basically, languages are divided into two categories
according to their interpretation.
C PROGRAMMING Page 6
presence of an electric pulse . Since a computer is Capable of recognizing electric signals,
therefore, it understand machine Language.
C PROGRAMMING Page 7
Advantages of Assembly Language
i) It is easier to understand and use as compared to machine language.
ii)It is easy to locate and correct errors.
iii) It is modified easily
Disadvantages of Assembly Language
i) Like machine language it is also machine dependent.
ii) Since it is machine dependent therefore programmer Should have the knowledge of the
hardware also.
High Level Languages
High level computer languages give formats close to English language and the purpose of
developing high level languages is to enable people to write programs easily and in their own
native language environment (English). High-level languages are basically symbolic languages
that use English words and/or mathematical symbols rather than mnemonic codes. Each
instruction in the high level language is translated into many machine language instructions thus
showing one-to-many translation
Types of High Level Languages
Many languages have been developed for achieving different variety of tasks, some are fairly
specialized others are quite general purpose.
These are categorized according to their use as
a) Algebraic Formula-Type Processing. These languages are oriented towards the
computational procedures for solving mathematical and statistical problem
Examples are
BASIC (Beginners All Purpose Symbolic Instruction Code).
FORTRAN (Formula Translation).
PL/I (Programming Language, Version 1).
ALGOL (Algorithmic Language).
C PROGRAMMING Page 8
APL (A Programming Language).
b) Business Data Processing:
These languages emphasize their capabilities for maintaining data processing procedures
and files handling problems. Examples are:
COBOL (Common Business Oriented Language).
RPG (Report Program Generator
b) String and List Processing: These are used for string manipulation including search for
patterns, inserting and deleting characters. Examples are:
LISP (List Processing).
Prolog (Program in Logic).
Object Oriented Programming Language
In OOP, the computer program is divided into objects. Examples are:
C++
Java
e) Visual programming language: these are designed for building Windows-based applications
Examples are:
Visual Basic
Visual Java
Visual C
C PROGRAMMING Page 9
Following are the advantages of a high level language:
User-friendly
Similar to English with vocabulary of words and symbols
Therefore it is easier to learn.
They are easier to maintain.
Disadvantages of High Level Language
A high-level language has to be translated into the machine language by a translator and
thus a price in computer time is paid.
The object code generated by a translator might be inefficient Compared to an equivalent
assembly language program
1. Writing and editing the program using Text editor (source code).
2. Compile the program using any C compiler.(.bak file)
3. Linking the program with the required library modules(object file)
4. Executing the program. (.Exe file)
C PROGRAMMING Page 10