1.-lecture-notes-on-Computer-Application
1.-lecture-notes-on-Computer-Application
ON
Computer Application
PREPARED BY
Er.Alisa Ransingh(Lect. In Comp. Appl.)
OSME,KEONJHAR
Reference:
1. COMPUTER ORGANISATION
Introduction to Computer Evolution of Computers Generation of Computers Classification of
Computers Basic Organisation of Computer (Functional Block diagram) Input Devices, CPU & Output
Devices. Computer Memory and Classification of Memory
2. COMPUTER SOFTWARE
Software concept, System software, Application software
Overview of Operating System Objectives and Functions of O.S ,
Types of Operating System: Batch Processing, Multiprogramming, Time Sharing OS Features of DOS,
Windows and UNIX
Programming Languages Compiler, interpreter Computer Virus
Different Types of computer virus
Detection and prevention of Virus
Application of computers in different Domain
7. ADVANCED FEATURES OF C
Functions and Passing Parameters to the Function (Call by Value and Call by Reference) Scope of
Variables and Storage Classes
Recursion Function and Types of Recursion
One Dimensional Array and Multidimensional Array
String Operations and Pointers
Pointer Expression and Pointer Arithmetic Programming Assignments using the above features. Structure
and Union (Only concepts, No Programming)
CHAPTER -1: COMPUTER ORGANISATION
Introduction to Computer
Computer is an electronic device that operates (works) under the control of programs
stored in its own memory unit.
A computer is an electronic machine that processes raw data to give information as
output.
An electronic device that accepts data as input, and transforms it under the influence of
a set of special instructions called Programs, to produce the desired output (referred to
as Information).
Explanations:
A computer is described as an electronic device because; it is made up of electronic
components and uses electric energy (such as electricity) to operate.
A computer has an internal memory, which stores data & instructions temporarily
awaiting processing, and even holds the intermediate result (information) before it is
communicated to the recipients through the Output devices.
It works on the data using the instructions issued, means that, the computer cannot do
any useful job on its own. It can only work as per the set of instructions issued.
A computer will accept data in one form and produce it in another form. The data is
normally held within the computer as it is being processed.
Program:
A computer Program is a set of related instructions written in the language of the
computer & is used to make the computer perform a specific task (or, to direct the
computer on what to do).
A set of related instructions which specify how the data is to be processed.
A set of instructions used to guide a computer through a process.
Data:
Data is a collection of raw facts, figures or instructions that do not have much meaning
to the user.
Data may be in form of numbers, alphabets/letters or symbols, and can be processed
to produce information.
Evolution of Computers
Computer evolution refers to the change in computer technology right from the time
computers were first used to the present. As computing evolves to higher system levels, so its
design also changes, from technical to socio-technical design.
The series of the evolution of computers are given below.
Abacus
Pascaline
Difference engine
Punched card equipment
ABC
UNIVAC - I
Abacus
The present day computers are a result of an evolutionary process which started way
back in 500 B.C. when Egyptian used a machine which is an early form of Abacus.
However the present form of Abacus is attributed to the Chinese and Japanese.
This is a machine, which was used for addition, subtraction, multiplication and division
operation.
Pascaline
Difference engine
UNIVAC
In 1945 John Von Neumann first gave the idea of sharing the same internal memory for
storing both data and instruction, which was subsequently adopted in every computer
organization.
On this principle subsequently Universal Automatic Computer (UNIVAC-1) was invented
Generation of Computers
Total there are 5 generations of computer.
These ancient computers utilized vacuum tubes as circuitry and magnetic drums for recollection. As a
result they were huge, actually taking up entire rooms and costing resources to run. These were
ineffective materials which produce a huge amount of heat, sucked enormous electricity and
subsequently engendered an abundance of heat which caused perpetual breakdowns.
These first generation computers relied on ‗machine language‘ (which is the most fundamental
programming language that can be understood by computers). These computers were limited to solving
one problem at a time. Input was predicated on punched cards and paper tape. Output emerged on
print-outs. The two eminent machines of this era were the UNIVAC and ENIAC machines – the UNIVAC
is the first ever commercial computer which was purchased in 1951 by a business named as the US
Census Bureau.
The supersession of vacuum tubes by transistors, visualized the onset of the second generation of
computing. Although first invented in 1947, transistors weren‘t used considerably in computers until the
cessation of the 1950s. They were a huge development over the vacuum tube, despite the fact still
subjecting computers to destroying different levels of heat. However they were extremely superior to
the vacuum tubes, making computers smaller, more expeditious, inexpensive and less burdensome on
electricity use. They still count on punched card for input/printouts.
The language emerged from strange binary language to symbolic (‗assembly‘) languages. These
meant programmers could discover instructions in words. Meanwhile during the same time high caliber
programming languages were being developed (early versions of COBOL and FORTRAN). Transistor-
driven machines were the first computers to store instructions into their recollections, peregrinating from
magnetic drum to magnetic core ‗technology‘. The anticipatory versions of these machines were
created for the atomic energy industry.
This innovation can be defined in one word: Intel. The chip-maker accomplished the Intel 4004
chip in 1971, which located all components of computer such as CPU, recollection, input/output
controls onto a single chip. What overcrowded a room in the 1940s now gets fit in the palm of
the hand. The Intel chip contained thousands of unified circuits. The year 1981 saw the first
ever computer (IBM) categorically designed for home use and 1984 saw the Macintosh
introduced by Apple. Microprocessors even transformed beyond the realm of computers and
into an incrementing number of everyday products.
The incremented power of these small computers denoted they could be linked, establishing
networks. Which eventually led to the expansion, birth and rapid evolution of the Internet? Other
primary advances during this period have been the Graphical user interface (GUI), the mouse
and more of late the startling advances in laptop capability and hand-held contrivances.
Computer devices with artificial potentiality are still in development, but some of these
technologies are commencing to emerge and be used such as voice recognition. AI is an
authenticity, made possible by adopting parallel processing and superconductors. Inclining to
the future, computers will be thoroughly revolutionized again by quantum computation,
molecular and nano technology. The essence of fifth generation will be utilizing these
technologies to ultimately engender machines which can proceed and acknowledge natural
language, and have efficiency to determine and organize themselves.
Large Scale
Main Integrat
Vacuum Transistor Integration(L
Switchin ed
Tube SI) & VLSI
g Device Circuit(I
C)
6000 10000 10 millions Over 500
Component circuits/cubic circuits/cubic circuits/cu billion
Size foot foot bic foot circuits/cubic
foot
Number of
250 30,000 2,00,000 80 Millions
instructions/se
c.
Meantime
Hour Days Weeks Months
between
failure
Internal 30000 5,12,000 Over 4
4000
memory characters characters million
characters
capacity character
s
Classification of Computers
All the modern computers are broadly classified into the following three categories.
a) Analog Computer.
c) Hybrid Computer.
Analog computers
Digital computers
These computers are general purpose computers, which work on digital / binary data.
The speed and accuracy with which these computers work are very high.
Digital computers are also having several ranges from super computers to personal
computers.
Hybrid computers
Digital computers
o Super Computers.
o Mainframe Computers.
o Mini Computers.
o Micro Computer
Super computers
These computers are specifically designed to maximize the processing of floating point
instructions.
This is possible because of parallel processing technique which implements multiple
processors to work in parallel manner.
Such computers are very expensive and used in very high-end numerical processing,
geographical information system, etc.
Some of the popular super computers are Cray, Param, Anupam etc.
The speed of processing of super computers are measured in GFLOPS i.e., Giga
Floating Point Operations Per Second.
These computers used their own operating system and programming language and
hence vary from computer to computer.
Mainframe computers
These computers are intended for substantial high volume data processing.
• space research,
• university connectivity,
• Wide area network (WAN) implementation etc.
Mini Computers
These computers are mainly used for medium or large volume data processing activity.
Micro computers
This is the smallest and least expensive computers are or personal computers
popularly known as PC.
Typical features.
Typical Specifications of PC
Personal Computer
Input Device:
Computers need to receive data and instruction in order to solve any problem. Therefore,
we need to input the data and instructions into the computers. The input unit consists of one or
more input devices. Keyboard is the one of the most commonly used input device. Other
commonly used input devices are the Mouse, Scanner, Microphone etc. All the input devices
perform the following functions.
• Accept the data and instructions from the outside world.
• Convert it to a form that the computer can understand.
• Supply the converted data to the computer system for further processing.
The Control Unit (CU) and Arithmetic Logic Unit (ALU) of the computer are together known
as the Central Processing Unit (CPU). The CPU is like brain performs the following functions:
All calculations are performed in the Arithmetic Logic Unit (ALU) of the computer. It
also does comparison and takes decision. The ALU can perform basic operations such
as addition, subtraction, multiplication, division, etc and does logic operations viz, >, <,
=, ‗etc. Whenever calculations are required, the control unit transfers the data from
storage unit to ALU once the computations are done, the results are transferred to the
storage unit by the control unit and then it is send to the output unit for displaying
results.
Control Unit:
It controls all other units in the computer. The control unit instructs the input unit, where
to store the data after receiving it from the user. It controls the flow of data and
instructions from the storage unit to ALU. It also controls the flow of results from the ALU
to the storage unit.
The control unit is generally referred as the central nervous system of the computer that
control and synchronizes it‘s working.
Output Device:
The output unit of a computer provides the information and results of a computation to
outside world. Printers, Visual Display Unit (VDU) are the commonly used output
devices. Other commonly used output devices are Speaker, Headphone, and Projector
etc.
Storage Unit:
The storage unit of the computer holds data and instructions that are entered through the
input unit, before they are processed. It preserves the intermediate and final results before
these are sent to the output devices. It also saves the data for the later use. The various storage
devices of a computer system are divided into two categories.
a) Primary Storage: Stores and provides very fast. This memory is generally used to hold the
program being currently executed in the computer, the data being received from the input
unit, the intermediate and final results of the program. The primary memory is temporary in
nature. The data is lost, when the computer is switched off. In order to store the data
permanently, the data has to be transferred to the secondary memory. The cost of the primary
storage is more compared to the secondary storage. Therefore, most computers shave limited
primary storage capacity.
Secondary Storage: Secondary storage is used like an archive. It stores several programs,
documents, data bases etc. The programs that you run on the computer are first transferred to
the primary memory before it is actually run. Whenever the results are saved, again they get
stored in the secondary memory. The secondary memory is slower and cheaper than the
primary memory. Some of the commonly used secondary memory devices are Hard disk, CD,
etc.,
Memory Size:
All digital computers use the binary system, i.e. 0‘s and 1‘s. Each character or a number
is represented by an 8-bit code.
The set of 8 bits is called a byte. A character occupies 1-byte space. A numeric occupies
2- byte space. Byte is the space occupied in the memory.
The size of the primary storage is specified in KB (Kilobytes) or MB (Megabyte). One
KB is equal to 1024 bytes and one MB is equal to 1000KB. The size of the primary
storage in a typical PC usually starts at 16MB. PCs having 32 MB, 48MB, 128 MB,
256MB memory are quite common.
The acronym RAM stems from the fact that data stored in random access memory can be
accessed– as the name suggests – in any random order. Or, put another way, any random bit
of data can be accessed just as quickly as any other bit.
The most important things to understand about RAM are that RAM memory is very fast,
it can be written to as well as read, it is volatile (so all data stored in RAM memory is lost when
it loses power) and, finally, it is very expensive compared to all types of secondary memory in
terms of cost per gigabyte. It is because of the relative high cost of RAM compared to secondary
memory types that most computer systems use both primary and secondary memory.
Data that is required for imminent processing is moved to RAM where it can be accessed
and modified very quickly, so that the CPU is not kept waiting. When the data is no longer
required it is shunted out to slower but cheaper secondary memory, and the RAM space that
has been freed up is filled with the next chunk of data that is about to be used.
Types of RAM
DRAM: DRAM stands for Dynamic RAM, and it is the most common type of RAM used in
computers. The oldest type is known as single data rate (SDR) DRAM, but newer computers
use faster dual data rate (DDR) DRAM. DDR comes in several versions including DDR2 ,
DDR3, and DDR4, which offer better performance and are more energy efficient than DDR.
However different versions are incompatible, so it is not possible to mix DDR2 with DDR3
DRAM in a computer system. DRAM consists of a transistor and a capacitor in each cell.
SRAM: SRAM stands for Static RAM, and it is a particular type of RAM which is faster than
DRAM, but more expensive and bulker, having six transistors in each cell. For those reasons
SRAM is generally only used as a data cache within a CPU itself or as RAM in very high-end
server systems. A small SRAM cache of the most imminently-needed data can result in
significant speed improvements in a system
The key differences between DRAM and SRAM are that SRAM is faster than DRAM -
perhaps two to three times faster - but more expensive and bulkier. SRAM is usually available
in megabytes, while DRAM is purchased in gigabytes.
DRAM uses more energy than SRAM because it constantly needs to be refreshed to
maintain data integrity, while SRAM - though volatile – does not need constant refreshing
when it is powered up.
2) ROM Computer Memory
ROM stands for read-only memory, and the name stems from the fact that while data can be
read from this type of computer memory, data cannot normally be written to it. It is a very fast
type of computer memory which is usually installed close to the CPU on the motherboard.
ROM is a type of non-volatile memory, which means that the data stored in ROM persists in
the memory even when it receives no power – for example when the computer is turned off. In
that sense it is similar to secondary memory, which is used for long term storage.
When a computer is turned on, the CPU can begin reading information stored in ROM without
the need for drivers or other complex software to help it communicate. The ROM usually contains
"bootstrap code" which is the basic set of instructions a computer needs to carry out to become
aware of the operating system stored in secondary memory, and to load parts of the operating
system into primary memory so that it can start up and become ready to use.
ROM is also used in simpler electronic devices to store firmware which runs as soon as the
device is switched on.
Types of ROM
ROM is available in several different types, including PROM, EPROM, and EEPROM.
PROM: PROM stands for Programmable Read-Only Memory, and it is different from true ROM
in that while a ROM is programmed (i.e. has data written to it) during the manufacturing process,
a PROM is manufactured in an empty state and then programmed later using a PROM
programmer or burner.
EPROM: EPROM stands for Erasable Programmable Read-Only Memory, and as the name
suggests, data stored in an EPROM can be erased and the EPROM reprogrammed. Erasing an
EPROM involves removing it from the computer and exposing it to ultraviolet light before re-
burning it.
EEPROM: EEPROM stands for Electrically Erasable Programmable Read-Only Memory, and
the distinction between EPROM and EEPROM is that the latter can be erased and written to
by the computer system it is installed in. In that sense EEPROM is not strictly read-only.
However in many cases the write process is slow, so it is normally only done to update program
code such as firmware or BIOS code on an occasional basis.
Secondary Memory
We know that processor memory, also known as primary memory, is expensive as well as
limited. The faster primary memory is also volatile. If we need to store large amount of data or
programs permanently, we need a cheaper and permanent memory. Such memory is called
secondary memory. Here we will discuss secondary memory devices that can be used to store
large amount of data, audio, video and multimedia files.
Hard disk drive is made up of a series of circular disks called platters arranged one over the
other almost ½ inches apart around a spindle. Disks are made of non-magnetic material like
aluminum alloy and coated with 10-20 nm of magnetic material.
Standard diameter of these disks is 14 inches and they rotate with speeds varying from 4200
rpm (rotations per minute) for personal computers to 15000 rpm for servers. Data is stored by
magnetizing or demagnetizing the magnetic coating. A magnetic reader arm is used to read data
from and write data to the disks. A typical modern HDD has capacity in terabytes (TB).
CD Drive
CD stands for Compact Disk. CDs are circular disks that use optical rays, usually lasers, to
read and write data. They are very cheap as you can get 700 MB of storage space for less than
a dollar. CDs are inserted in CD drives built into CPU cabinet. They are portable as you can
eject the drive, remove the CD and carry it with you. There are three types of CDs −
CD-ROM (Compact Disk – Read Only Memory) − The data on these CDs are
recorded by
the manufacturer. Proprietary Software, audio or video are released on CD-ROMs.
CD-R (Compact Disk – Recordable) − Data can be written by the user once on the
CD-R. It cannot be deleted or modified later.
CD-RW (Compact Disk – Rewritable) − Data can be written and deleted on these
optical disks again and again.
DVD Drive
DVD stands for Digital Video Display. DVD are optical devices that can store 15 times the data
held by CDs. They are usually used to store rich multimedia files that need high storage capacity.
DVDs also come in three varieties – read only, recordable and rewritable.
P e n Drive
Pen drive is a portable memory device that uses solid state memory rather than magnetic fields
or lasers to record data. It uses a technology similar to RAM, except that it is nonvolatile. It is
also called USB drive, key drive or flash memory.
Blu Ray Disk (BD) is an optical storage media used to store high definition (HD) video and other
multimedia filed. BD uses shorter wavelength laser as compared to CD/DVD. This enables
writing arm to focus more tightly on the disk and hence pack in more data. BDs can store up to
128 GB data.
INPUT DEVICES
An input device is used to feed data and instructions into the computer. In the absence of an
input device, a computer would have only been a display device
INPUT
MOUSE
The mouse is the key input device to be used in a graphical user interface (GUI). The users can use mouse to handle the
pointer easily on the screen to perform various functions like opening a program or file.
With mouse, the users no longer need to memorize commands, which was earlier a necessity when working with text-
based command line environment such as MS-DOS.
Advantages:
Easy to use; Cheap; Can be used to quickly place the cursor
anywhere on the screen; Helps to quickly and easily draw figures;
Point and click capabilities makes it unnecessary to remember certain commands
Disadvantages:
Needs extra desk space to be placed and moved easily
The ball in the mechanical mouse must be cleaned to remove dust from it
TRACKBALL
A trackball is a pointing device which is used to control the position of the cursor on the screen. These are usually used
in notebook and laptop computers where it is placed on the keyboard. The trackball is nothing but an upside-down mouse
that rotates in place within a socket. The user rolls the ball to position the cursor at an appropriate position on the screen
and then clicks one of the buttons to select objects or position the cursor for text entry.
Advantages:
Trackball provides better resolution; Occupies less space
Easier to use as compared to mouse as its use involves
less hands-and-arms movements
Disadvantage:
The trackball chamber is often covered with dust, so it must be cleaned regularly
TOUCHPAD
A touchpad (or track pad) is a small, flat, rectangular stationary pointing device with sensitive surface of 1.5 or 2 inches square. The user
has to slide his finger tips across the surface of the pad to point to a specific object on the screen.
The surface translates the motion and position of user’s fingers to a relative position on the screen. There are also buttons around the
edge of the pad that work like mouse buttons. Touchpad is widely used in laptops and is built-in on the keyboard.
Advantages:
Occupies less space
Easier to use as compared to mouse as its use involves
less hands-and-arms movements
It is built-in the keyboard, so no need to carry an extra device separately
Joystick
is a cursor control device widely used in computer games and CAD/CAM applications. It consists of a hand-held lever that pivots on one
end and transmits its coordinates to a computer. It has one or more push-buttons, called
switches, whose position can also be read by the computer.
A stylus is a pen-shaped input device used to enter information or write on the touch screen of a phone. Stylus is a small stick that can
also be used to draw lines on a surface as input to a computer, choose an option from a menu, move the cursor to another location on
the screen, take notes and create short messages. The stylus usually slides into a slot built into the smart phone for that purpose.
BARCODE READERS
A barcode reader (or price scanner or point-of-sale scanner) is a hand-held input device which is used to capture and read information
stored in a barcode. A barcode reader consists of a scanner, a decoder, and a cable used to connect the reader with a computer.
The barcode reader merely captures and translates the barcode into numbers and/or letters. To make use of the information captured it
must be connected to a computer for further processing. For this purpose, the barcode reader is connected to a computer through a
serial port, keyboard port, or an interface device called a wedge.
IMAGE SCANNER
• It is a device that captures images, printed text, handwriting from different sources and converts it into a digital image for computer
editing and display.
• Scanners come in hand-held, feed-in, and flatbed types.
• In the flat bed scanner, the object to be scanned is placed on a glass pane and a sensor and light moves along the pane, reflecting off
the image placed on the glass.
• A hand image scanner has to be manually moved across an object or image to be scanned. The scanner produces light from green
LEDs which highlight and scan the image onto a computer for further processing.
• Film scanners are usually used in photography and slides. The slide or negative film is first inserted in strips of six or less frames into
the film scanner, and then moved across a lens and censor to capture the image.
OCR is the process of converting printed materials into text or word processing files that can be easily edited and stored. The steps
involved in OCR include:
Scanning of the text character-by-character
Analyzing the scanned-in image to translate the character image into character codes (e.g. ASCII)
Advantages:
Printed documents can be converted into text files
Advanced OCR can recognize handwritten text and convert them into computer readable text files
Disadvantages:
OCR cannot recognize all types of fonts
Documents that are poorly types or have strikeover cannot be recognized
Very old documents when passed through OCR may not have an exact copy of the text file.
OUTPUT DEVICES
Any device that outputs/gives information from a computer is called an output device.
Output devices are electromechanical devices which accept digital data from the computer and converts them into human
understandable language.
CATHODE RAY TUBE MONITORS
LIQUID CRYSTAL DISPLAY MONITORS
PLASMA MONITORS
PROJECTOR
SPEAKERS
Hard copy output devices produces a physical form of output. For example, the content of a file printed on a paper is a
form of hard copy output.
PRINTERS
Printer is a device that outputs text and graphics information obtained from the computer and prints it on to a paper.
Printers are available in the market in a variety of size, speed, sophistication, and cost. The qualities of printer which are
of interest to users include:
Color: Colored printouts are needed for presentations or maps and other pages where color is part of the information.
They are more expensive,
Memory: Most printers have a small amount of memory that can be expanded by the user. Having more memory makes
enhances the speed of printing
Resolution: The resolution of a printer means the sharpness of text and images on paper. It is usually expressed in dots
per inch (dpi). Even the least inexpensive printer provides sufficient resolution for most purposes at 600 dpi.
Speed: Speed means number of pages that are printed in one minute. While high speed printers are a little expensive, the
inexpensive printers on the other hand can print only about 3 to 6 sheets per minute. Color printing is even slower.
Impact Printer.
They create characters by striking an inked ribbon against the paper. Ex., dot-matrix printers, daisywheel printers, and
most types of line printer.
It creates a lot of noise when the pins strike the ribbon to the paper.
It can only print lower-resolution graphics, with limited quality
It is very slow
Poor print quality
• Daisy wheel printers use an impact printing technology to generate high-quality output comparable to typewriters but
three times faster.
• The print head of a daisy wheel printer is a circular wheel, about 3 inches in diameter with arms or spokes. The
characters are embossed at the outer end of the arms.
• To print a character, the wheel is rotated in such a way that the character to be printed is positioned just in front of the
printer ribbon.
• The spoke containing the required character is then hit by a hammer thereby striking the ribbon to leave an impression
on the paper placed behind the ribbon. Movement of all these parts is controlled by microprocessor in the printer.
• The key benefit of using a daisy wheel printer is that the print quality is high as the exact shape of the character hits the
ribbon to leave and impression on paper.
LINE PRINTER
Line printer is a high speed impact printer in which one typed line is printed at a time. The speed of a line printer usually
varies from 600 to 1200 lines-per-minute or approximately 10 to 20 pages per minute. They are widely used in datacenters
and in industrial environments. Band printer is a commonly used variant of line printers.
Band Printer: A band printer (loop printer) is an impact printer . The set of characters are permanently embossed on the
band and this set cannot be changed unless the band is replaced. The band itself revolves around hammers that push the
paper against the ribbon, allowing the desired character to be produced on the paper. However, band printers cannot be
used for any graphics printing as the characters are predetermined and cannot be changed unless the band is changed.
INKJET PRINTERS
• In inkjet printers , the print head has several tiny nozzles, also called jets.
• As the paper moves past the print head, the nozzles spray ink onto it, forming the characters and images.
• The dots are extremely small (usually between 50 and 60 microns in diameter) and are positioned very precisely, with
resolutions of up to 1440x720 dots per inch (dpi).
• There is usually one black ink cartridge and one so-called color cartridge containing ink in primary pigments (cyan,
magenta, and yellow).
While inkjet printers are cheaper than laser printers, they are more expensive to maintain. The cartridges of inkjet printers
have to be changed more frequently and the special coated paper required to produce high-quality output is very
expensive. So the cost per page of inkjet printers becomes ten times more expensive than laser printers. Therefore, inkjet
printers are not well-suited for high-volume print jobs.
LASER PRINTER
• It is a non-impact printer that works at a very high speed and produces high quality text and graphics.
• It uses the photocopier technology. When a document is sent to the printer, a laser beam "draws" the document on a
drum (which is coated with a photo-conductive material) using electrical charges.
• After the drum is charged, it is rolled in toner (a dry powder type of ink).
• The toner sticks to the charged image on the drum.
• The toner is transferred onto a piece of paper and fused to the paper with heat and pressure.
After the document is printed, the electrical charge is removed from the drum and the excess toner is collected.
While color laser printers are also available in the market but users prefer only monochrome printers because a color
laser printer is up to 10 times more expensive than a monochrome laser printer.
PLOTTERS
A plotter is used to print vector graphics with a high print quality. They are widely used to draw maps, in scientific
applications and in applications like CAD, CAM and CAE
A drum plotter is used to draw graphics on a paper that is wrapped around a drum. It works by rotating the drum back and
forth to produce vertical motion. The pen which is mounted on a carriage is moved across the width of the paper. Hence,
the vertical movement of the paper and the horizontal movement of the pen create the required design under the control
of the computer.
In a flatbed plotter, the paper is spread on the flat rectangular surface of the plotter and the pen is moved over it. Flatbed
plotters are less expensive and used in many smaller computing systems. In this type of plotter, the paper is not moved
rather plotting is done by moving an arm that moves a pen over paper.
Practice questions…..
Outline the key features of 1st Generation Computer in brief.(2019-Winter)
What is CPU?(2018-Summer)
What is ALU?(2014-Winter)
Name three input devices used in PC.(2016-Summer)
Discuss about the generation of computers? Explain the key features of computers of each
generation?(2013-Winter)
outline the key features of 4th generation computer in brief.
Define memory hierarchy. State the different memory present in the different levels.
(2015-Winter, 2013-Winter)
What is an OMR?
What is a MICR?(2014-Winter)
What is memory hierarchy? Explain the main features of the various types of
memory present at different levels of this hierarchy? (2016-Winter)
Differentiate between primary memory and secondary memory used in PC. Give
proper example to substantiate your answer? (2017-Winter)
CHAPTER – 2: COMPUTER SOFTWARE
Software concept
Software is a program which helps the human user to give instruction to computer
hardware.
Types of Software
• Systems software
• Application software
System software
System Software is a set of programs that manage the resources of a computer
system.
System Software can be broadly classified into three types as:
o System control programs
o System support programs
o System development programs
System control programs
o controls the execution of programs
o manage the storage & processing resources of the computer
o perform other management & monitoring function
o The most important of these programs is the operating system,
DBMS & communication monitors.
System support programs
o Provide routine service functions to the other computer programs
& computer users:
E.g. Utilities, libraries, performance monitors & job accounting.
System development programs
o Assists in the creation of application
o Programs. e.g., language translators such as BASIC interpreter &
application generators.
Application software
Application software, or app for short, is software that performs specific tasks for an end-
user.
Effectively, if the user is interacting directly with a piece of software it is application
software. For example, Microsoft Word or Excel is application software, as are common
web browsers such as Firefox or Google Chrome.
It also includes the category of mobile apps, including communication apps such as
WhatsApp or games such as Candy Crush Saga. There are also app versions of common
services such as those providing weather or transport information or apps for customers
to interact with companies.
Application software is distinct from system software, which refers to the software that
actually keeps the systems running such as the operating system, computational
science software, game engines, industrial automation, and software as service
applications.
Instead of interacting with the user, the system software interacts with other software or
hardware.
overview of Operating System
An operating system (OS) is software that manages computer hardware resources and
provides common services for computer programs. The operating system is an essential
component of the system software in a computer system.
Application programs usually require an operating system to function. Time-sharing
operating systems schedule tasks for efficient use of the system and may also include
accounting software for cost allocation of processor time, mass storage, printing, and
other resources.
For hardware functions such as input and output and memory allocation, the operating
system acts as an intermediary between programs and the computer hardware,
although the application code is usually executed directly by the hardware and will
frequently make a system call to an OS function or be interrupted by it. Operating
systems can be found on almost any device that contains a computer—from cellular
phones and video game consoles to supercomputers and web servers.
Examples of popular modern operating systems include Android, BSD, iOS, Linux, OS
X, QNX, Microsoft Windows, Windows Phone, and IBM z/OS. All these, except
Windows, Windows Phone and z/OS, share roots in UNIX.
Batch Processing
Batch processing is the execution of a series of programs ("jobs") on a computer without
manual intervention. Jobs are set up so they can be run to completion without human
interaction. All input parameters are predefined through scripts, command-line arguments,
control files, or job control language. This is in contrast to "online" or interactive programs which
prompt the user for such input. A program takes a set of data files as input, processes the data,
and produces a set of output data files. This operating environment is termed as "batch
processing" because the input data are collected into batches or sets of records and each batch
is processed as a unit.
Multiprogramming
Multiprogramming is a rudimentary form of parallel processing in which several programs
are run at the same time on a uniprocessor. Since there is only one processor, there can be
no true simultaneous execution of different programs. Instead, the operating system executes
part of one program, then part of another, and so on. To the user it appears that all programs
are executing at the same time.
Time Sharing OS
MS-DOS stands for Microsoft Disk Operating System. Tim Paterson developed this
operating system in 1980. The IBM (International Business Machine) released first PC
(Personal Computer) in 1981. MS-DOS version 1.0 was used as operating system in IBM-PC
and become talk of town in overnight. The father of PC Operating System is Gary Kildall of
Digital Research. He had his Ph.D in computer and designed more successful operating
System called CP/ M. The selling of CP / M is more than 600,000 copies proves its popularity.
The Microsoft Disk Operating System or MS- DOS was based on QDOS, the
Quick and Dirty Operating System written by Tim Peterson of Seattle Computer Products, for
their prototype Intel 8086 based computer. QDOS was based on Gray Kildall‘s CF/M. Paterson
had bought a CP/ M manual and used it as the basis to write his operating system six weeks,
QBOS was different enough from CP / M. MS-DOS version 7.0 is lunched in 1997 which is a
hidden with Window95/98 OS.
It has three essential files and many command files. These essential files are: IO.SYS,
MSDOS.SYS, and COMMAND.COM. These files are called system files of MS-DOS. The
DOS is Boss in real sense, because in the age of Windows operating system, hardware
utilities are dependent on the DOS.
IO.SYS: This let DOS communicate with the hardware through the BIOS (Basic Input /
Output System).
MSDOS.SYS: This is a DOS kernel.
COMMAND.COM: This is where all the DOS commands are stored and interpreted.
COFIG.SYS: Hardware configuration information is stored here.
AUTOEXEC.BAT: All the programs that are supposed to run at startup are called here.
Booting: The booting is a process of loading system files into main memory (RAM).
There are two types of booting: cold booting and warm booting.
Version
Comments
Windows 1.0
This operating system with user interface is a notification of MSDOS. The nifty mouse is
used to click on desired program to open. It was first called interface manager, but then
changed in to the more appealing Windows. Windows 1.0lanched in November 1985.
Windows 2.0
It was released in 1987 to take advantage of the awesome processing power of the Intel
286processor. The first version of Microsoft Word and Excel are introduced in this version.
Windows 3.0
It was released in May 1990. It came with a prettier 16-colorinterface, and new
technological bells and whistles that let it make better use of the memory. In 1991, Microsoft
brought multimedia support for Windows 3.0, called feature, though, is the active desktop, which
integrates the web browser (internet Explorer), with operating system.
Windows 2000
Its interface is similar to interface for windows 98. It has new security protocol with an
encryption facility to authenticate users logging in to the network. It supports 32 FAT file system
along with NTFC (New Technology File System), making it easier for users to
upgrade for Windows 98. It has quite robustly brid kernel architecture, make it more stable
version.
Windows Me
Later in 2000, Windows Millennium (windows me) Edition was released for the home user. This
was the last version of Windows to be based on Windows 98. Windows Me had always been
regarded as Microsoft‘ sway of keeping users busy while they waited for Windows XP.
Windows XP
Here, XP stands for experience. It bought together the robust Kernel of windows 2000
and all the friendless and multimedia support of Windows Me, and painted on a new face for it.
Apart from the merger of Windows2000 and me, Windows Xp also added new features to
enhance its performance. The first of These Throttling, Usually, Windows likes to do many
things at once, but when memory falls short, it will throttle its memory access, doing fewer at a
time. This shows the system down considerably, but prevents it from crashing.
Windows 7
Like previous versions of Windows, Windows 7 has a graphical user interface (GUI) that
allows you to interact with items on the screen using a keyboard and mouse. However,
Windows 7 is also includes a feature called "Windows Touch" that supports touch screen input
and multi touch functionality
Windows 8
Windows 8 is the latest version of Microsoft's Windows operating system. It was released
on October 26, 2012, and is the first major update to Windows since Windows 7, which was
released over three years earlier.
The goal of the new Windows 8 interface is to function on both traditional desktop PCs,
such as desktop computers and laptops, as well as tablet PCs. Windows 8 supports both touch
screen input as well as traditional input devices, such as a keyboard and mouse.
Windows 10
Windows 10 is a major version of the Microsoft Windows operating system that was
released on July 29, 2015. It is built on the Windows NT kernel and follows Windows 8.
While Windows 10 includes many new features, it also brings back the Start Menu, which
was dropped in Windows 8. The new and improved Start Menu provides quick access to
settings, folders, and programs and also includes tiles from the Windows 8 interface. The
bottom of the Windows 10 Start Menu includes a search bar that allows you to search both
your local PC and the web.
UNIX Operating System
The UNIX (pronounced as YEW-nihks) is a powerful, flexible, multi-user Operating
system with GUI and several utilities. Ken Thompson and Dennis Ritchie wrote Compiler under
UNIX in 1969 at Bell Labs. In 1973, Thompson and Ritchie rewrote the UNIX kernel using C
language. It is based on MULTICS operating system. Its first user was Bell patent department.
XENIX, VENIX, MICRONIX, LINUX, UNIXWARE-7 etc are version of UNIX operating system.
(a) Kernel: It is a hub of operating system dedicated for memory management, file
management and communication within system.
(b) Shell: It is an interface between kernel and users. When a user logs in, the login program
matches the username and password, and then starts shell. The shell is a command line
interpreter (CLI) of UNIX.
(c) Program or command: It is used to accomplish specific tasks. When one command is
terminated, the shell displays prompt % to accept next command for execution.
Programming Languages
A programming language is a formal constructed language designed to communicate
instructions to a machine, particularly a computer. Programming languages can be used to
create programs to control the behavior of a machine or to express algorithms so that the
computer hardware can run with a proper step by step instruction.
The earliest programming languages preceded the invention of the computer and were used
to direct the behavior of machines such as Jacquard looms and player pianos. Thousands of
different programming languages have been created, mainly in the computer field, and many
more still are being created every year. Many programming languages require computation to
be specified in an imperative form (i.e., as a sequence of operations to perform), while other
languages utilize other forms of program specification such as the declarative form (i.e. the
desired result is specified, not how to achieve it).
The description of a programming language is usually split into the two components of
syntax (form) and semantics (meaning). Some languages are defined by a specification
document (for example, the C programming languages specified by an ISO Standard), while
other languages (such as Perl) have dominant implementation that is treated as a reference.
There are two major types of programming languages I,e. Procedural programming language
and Object Oriented programming language.
Procedural programming
In procedural programming our code is organized into small "procedures" that use and
change our data. In ColdFusion, we write our procedures as either custom tags or functions.
These functions typically take some input, do something, then produce some output. Ideally your
functions would behave as "black boxes ―where input data goes in and output data comes out.
The key idea here is that our functions have no intrinsic relationship with the data they
operate on. As long as you provide the correct number and type of arguments, the function will
do its work and faithfully return its output.
Sometimes our functions need to access data that is not provided as a parameter, i.e.,
we need access data that is outside the function. Data accessed in this way is considered
"global" or "shared" data.
So in a procedural system our functions use data they are "given" (as parameters) but also
directly access any shared data they need.
In object oriented programming, the data and related functions are bundled together into
an "object". Ideally, the data inside an object can only be manipulated by calling the object's
functions. This means that your data is locked away inside your objects and your functions
provide the only means of doing something with that data. In a well-designed object oriented
system objects never access shared or global data, they are only permitted to use the data
they have, or data they are given.
Compiler, Interpreter
Compiler: It is a program which translates a high level language program into a machine
language program. A compiler is more intelligent than an assembler. It checks all kinds of limits,
ranges, errors etc. But its program run time is more and occupies a larger part of the memory.
It has slow speed. Because a compiler goes through the entire program and then translates
the entire program into machine codes. If a compiler runs on a computer and produces the
machine codes for the same computer then it is known as a self-compiler or resident compiler.
On the other hand, if a compiler runs on a computer and produces the machine codes for other
computer then it is known as a cross compiler.
Memory Resident Virus-These viruses fix themselves in the computer memory and get
activated whenever the OS runs and infects all the files that are then opened. Hideout: This
type of virus hides in the RAM and stays there even after the malicious code is executed. It
gets control over the system memory and allocates memory blocks through which it runs its
own code, and executes the code when any function is executed. Target: It can corrupt files
and programs that are opened, closed, copied, renamed, etc. Examples: Randex, CMJ, Meve,
and MrKlunky, Protection: Install an antivirus program.
Direct Action Viruses-The main purpose of this virus is to replicate and take action when it is
executed. When a specific condition is met, the virus will go into action and infect files in the
directory or folder that are specified in theAUTOEXEC.BAT file path. This batch file is always
located in the root directory of the hard disk and carries out certain operations when the
computer is booted. Find First/Find Next technique is used where the code selects a few files
as its victims. It also infects the external devices like pen drives or hard disks by copying itself
on them. Hideout: The viruses keep changing their location into new files whenever the code
is executed, but are generally found in the hard disk's root directory. Target: It can corrupt files.
Basically, it is a file- infector virus. Examples: Vienna virus. Protection: Install an antivirus
scanner. However, this type of virus has minimal effect on the computer's performance.
Overwrite Viruses-A virus of this kind is characterized by the fact that it deletes the information
contained in the files that it infects, rendering them partially or totally useless once they have
been infected. Hideout: The virus replaces the file content. However, it does not change the file
size. Examples: Way, Trj.Reboot, Trivial.88.D. Protection: The only way to clean a file infected
by an overwrite virus is to delete the file completely, thus losing the original content. However,
it is very easy to detect this type of virus, as the original program becomes useless.
Boot Sector Virus-This type of virus affects the boot sector of a hard disk. This is a crucial
part of the disk, in which information of the disk itself is stored along with a program that makes
it possible to boot (start) the computer from the disk. This type of virus is also called Master
Boot Sector Virus or Master Boot Record Virus. Hideout: It hides in the memory until DOS
accesses the floppy disk, and whichever boot data is accessed, the virus infects it. Examples:
Polyboot.B, AntiEXE. Protection: The best way of avoiding boot sector viruses is to ensure that
floppy disks are write-protected. Also, never start your computer with an unknown floppy disk
in the disk drive.
Macro viruses infect files that are created using certain applications or programs that contain
macros, like .doc, .xls, .pps, .mdb, etc. These mini programs make it possible to automate
series of operations so that they are performed as a single action, thereby saving the user from
having to carry them out one by one. These viruses automatically infect the file that contains
macros, and also infects the templates and documents that the file contains. It is referred to as
a type of e-mail virus. Hideout: These hide in documents that are shared via e- mail or networks.
Examples: Relax, Melissa.A, Bablas, O97M/Y2KProtection: The best protection technique is to
avoid opening e- mails from unknown senders. Also, disabling macros can help to protect your
useful data.
Directory viruses (also called Cluster Virus/File System Virus)-It infects the directory of your
computer by changing the path that indicates the location of a file. When you execute a program
file with an extension .EXE or .COM that has been infected by a virus, you are unknowingly
running the virus program, while the original file and program is previously moved by the virus.
Once infected, it becomes impossible to locate the original files. Hideout: It is usually located
in only one location of the disk, but infects the entire program in the directory. Examples: Dir-
2virusProtection: All you can do is, reinstall all the files from the backup that are infected after
formatting the disk.
Companion viruses: It can be considered as a type of file infector virus, like resident or direct
action types. They are known as companion viruses because once they get into the system
they 'accompany' the other files that already exist.
In other words, to carry out their infection routines, companion viruses can wait in memory
until a program is run (resident virus), or act immediately by making copies of themselves (direct
action virus).
Hideout: These generally use the same filename and create a different extension of it. For
example: If there is a file "Me.exe", the virus creates another file named "Me.com" and hides in
the new file. When the system calls the filename "Me", the ".com" file gets executed (as ".com"
has higher priority than ".exe"), thus infecting the system. Examples: Stator, Asimov.1539 and
Terrax.1069 Protection: Install an antivirus scanner and also download Firewall .
FAT Virus: The file allocation table (FAT) is the part of a disk used to store all the information
about the location of files, available space, unusable space, etc. Hideout: FAT virus attacks the
FAT section and may damage crucial information. It can be especially dangerous as it prevents
access to certain sections of the disk where important files are stored. Damage
caused can result in loss of information from individual files or even entire directories.
Examples: Link Virus, Protection: Before the virus attacks all the files on the computer, locate
all the files that are actually needed on the hard drive, and then delete the ones that are not
needed. They may be files created by viruses.
Multipartite Virus-These viruses spread in multiple ways possible. It may vary in its action
depending upon the operating system installed and the presence of certain files.
Hideout: In the initial phase, these viruses tend to hide in the memory as the resident viruses
do; then they infect the hard disk. Examples: Invader, Flip and Tequila.
Protection: You need to clean the boot sector and also the disk to get rid of the virus, and then
reload all the data in it. However, ensure that the data is clean.
Web Scripting Virus-Many web pages include complex codes in order to create an interesting
and interactive content. This code is often exploited to bring about certain undesirable actions.
Hideout: The main sources of web scripting viruses are the web browsers or infected web
pages. Examples: JS.Fortnight is a virus that spreads through malicious e-mails. Protection:
Install the Microsoft tool application that is a default feature in Windows 2000, Windows 7 and
Vista. Scan the computer with this application.
Worms: A worm is a program very similar to a virus; it has the ability to self-replicate and can
lead to negative effects on your system. But they can be detected and eliminated by an antivirus
software. Hideout: These generally spread through emails and networks. They do not infect
files or damage them, but they replicate so fast that the entire network may collapse. Examples:
PSWBugbear.B, Lovgate.F, Trile.C, Sobig.D, Mapson. Protection: Install an updated version
of antivirus.
Trojans are another unsavory breed of malicious code are Trojans or Trojan horses, which
unlike viruses, do not reproduce by infecting other files, nor do they self-replicate like worms.
In fact, it is a program which disguises itself as a useful program or application.
Beware of the fact that these viruses copy files in your computer (when their carrier
program is executed) that can damage your data, and even delete it. The attacker can also
program the Trojans in such a manner that the information in our computer is accessible to
them.
Logic Bombs are not considered viruses because they do not replicate. They are not even
programs in their own right, but rather camouflaged segments of other programs. They are only
executed when certain predefined condition is met. Their objective is to destroy data on the
computer once certain condition shave been met. Logic bombs go undetected until launched,
the results can be destructive, and your entire data can be deleted.
Detection and prevention of Virus
Following steps may be taken for Virus Detection and Prevention.
1. Do not open any files attached to an email from an unknown, suspicious or untrustworthy
source.
2. Do not open any files attached to an email unless you know what it is, even if it appears
to come from a dear friend or someone you know. Some viruses can replicate
themselves and spread through email. Better be safe than sorry and confirm that they
really sent it.
3. Delete chain emails and junk email. Do not forward or reply to any to them. These types
of email are considered spam, which is unsolicited, intrusive mail that clogs up the
network.
4. Exercise caution when downloading files from the Internet. Ensure that the source is a
legitimate and a reputable one. Verify that an anti-virus program checks the files on the
download site. If you're uncertain, don't download the file at all.
5. Update your anti-virus software regularly. Thousands of viruses are discovered each
month, so you'll want to be protected.
6. Back up your files on a regular basis. If a virus destroys your files, at least you can
replace them with your back-up copy. You should store your backup copy in a separate
location from your work files, one that is preferably not on your computer.
7. When in doubt, always err on the side of caution and do not open, download, or execute
any files or email attachments. Not executing the files is especially important. Check
with your product vendors for updates which include those for your operating system
web browser, and email. One example is the security site section of Microsoft located at
http://www.microsoft.com/security.
8. Stay away from Bit torrent sites. Some of the more popular ones include Lime wire, Bit
Torrent, Frost wire and Pirate Bay. These are heavily laden with viruses, malware and
spyware. Downloading material from these websites is one of the easiest ways to
become infected. It‘s in your best interest to just avoid these websites completely.
9. Be careful when searching on the internet, the links that come up from your search
engine may contain a virus. Never go to sites that sound suspicious.
10. Due to the popularity of the social networking websites such as MySpace, Face book,
and Twitter, virus makers target them more than any other website. Online gaming and
gambling websites also are high risk websites. It‘s best to avoid these kinds of websites
altogether.
11. If you happen to see a popup message when on the internet about being infected and
to buy their software to protect yourself, do not fall for it! Most of the time these messages
are easy to see as they tend to have bad grammar and spelling errors. Common names
are XP Antivirus, Security Tools, ThinkPoint, Security Shield, Win 7 Security 2011, and
similar variations. If do see one of these popup, do not click on them, immediately shut
down your computer. If you click on any part of those windows you will give the virus
permission to install and bypass your antivirus program.
12. If you see any suspicious pop-ups appear on your screen, do not click on them. If you
do, it is very likely you will infect your computer. Instead use the following keyboard
command, which will allow you to close the pop-up, without having the click on it or
infecting yourself. The keyboard command is ALT + F4. If that fails, then shut down the
computer.
Define an operating system. Give examples of three operating system used on PC.
Define GUI.
Discuss the various objectives of an operating system. Illustrate your answer with
proper examples.
What is DOS? Discuss about the main features of DOS with appropriate examples.
Compare the various features of windows and UNIX operating system. Give suitable
example to substantiate your answer. (2015-Summer)
What is Virus? How does virus spread and what are the symptoms of virus attack? How
can you prevent virus attack? (2017-Winter) (2013-Winter) (2014-Winter)
Unguided Media:
It is the transfer of information over a distance without the use of enhanced electrical
conductors or wires.
When the computers in a network interconnected and data is transmitted through
waves, then they are said to be connected through unguided media.
Some commonly used unguided media of transmission are –
1. Radio wave transmission
2. Micro wave transmission
3. Satellite communication
4. Infrared wave transmission
5. Bluetooth.
Date Transmission mode
The way in which data is transmitted from one place to another is called Data
transmission mode or data communication mode or directional modes.
There are mainly 3 types of data transmission modes are-
1. Simplex mode
2. Half –duplex Mode
3. Full –duplex mode
Simplex mode-
In simplex mode, data can flow in only one direction.
In this mode, a sender can only send data and cannot receive it.
Similarly, a receiver can only receive data but cannot send it.
Ex- Radio, Television etc.
In full Duplex-mode, data can flow in both directions at the same time.
Ex- Mobile phone.
Network Topologies, Types of Network
Network Topologies
Network topology is determined only by the configuration of connections between
nodes.
In a fully connected network with n nodes, there are n(n-1)/2 direct links.
The most commonly used topology are described below:
1. Bus Topology
In case of Bus topology, all devices share single communication line or cable.
It is one of the simple forms of networking where a failure of a device does not
affect the other devices.
But failure of the shared communication line can make all other devices stop
functioning.
3. Star Topology
All hosts in star topology are connected to a central device, known as hub device,
using a point-to-point connection.
If the central hub fails, then whole network fails.
[Star Topology Diagram]
4. Tree Topology
This is also known as hierarchical topology.
It is a network topology in which nodes are arranged as a tree.
The function of the central node in this topology may be distributed.
It is an extension and variation of star topology.
A tree topology combines characteristics of linear bus and star topologies.
HUB-
o Networking using a star topology requires a central point for the devices to connect.
o It is like a repeater with multiple ports to connect the network channels.
REPEATER
o Repeaters have two ports and can connect two segments of a LAN.
o It is an electronic device that receives a signal and retransmits it.
SWITCH
o It is a small hardware device that joins multiple computers together one LAN.
o It helps to reduce overall network traffic.
BRIDGE
o A bridge is used to join two network segments together; it allows computers on either
segment to access resources on the other.
o They can also be used to divided large networks into smaller segment.
o A bridge is used to join two network segments together; it allows computers on either
segment to access resources on the other.
o They can also be used to divide large networks into smaller segment.
ROUTER
o Routers are networking devices used to extend or segment packets from one logical
network to another.
o Routers are most often used in large internetworks that use LANs to the internet
using dedicated leased lines.
GATEWAY
o It is an internetworking device, which joins two different network protocols together.
o They are also known as protocol converters.
NIC (Network Interface Card)
o It is a hardware Card installed in a computer so it can communicate on a network.
o The network adapter provides one or more ports for the network cable to connect to and
it transmits and receives data onto the network cable.
Solved Questions
Short Answer Type Questions.
Define WWW. (2017-Winter)
Ans.The World Wide Web, commonly known as the Web, is an information system
where documents and other web resources are identified by Uniform Resource
Locators, which may be interlinked by hypertext, and are accessible over the
Internet.
Define HTTP.
Ans.The Hypertext Transfer Protocol is an application layer protocol for distributed,
collaborative, hypermedia information systems.
Define a DNS.
Ans.The Domain Name System is a hierarchical and decentralized naming system for
computers, services, or other resources connected to the Internet or a private
network. It associates various information with domain names assigned to each of
the participating entities.
Define a FTP. (2016-Winter)
Ans. The File Transfer Protocol is a standard network protocol used for the transfer of
computer files from a server to a client on a computer network.
Long Answer Type Questions
Explain e-mail message format? (2017-Winter)
Ans. Electronic Mail (e-mail) is one of the most widely used services of the Internet.
This service allows an Internet user to send a message in a formatted manner
(mail) to other
Internet users in any part of the world. Message in the mail not only contain text, but it
also contains images, audio and videos data. The person who is sending mail is
called sender and person who receives mail is called the recipient. It is just like postal
mail service.
Format of E-mail:
An e-mail consists of three parts that are as follows:
1. Envelope
2. Header
3. Body
These are explained as following below.
1. Envelope:
The envelope part encapsulates the message. It contains all information that is required
for sending any e-mail such as destination address, priority and security level. The
envelope is used by MTAs for routing message.
2. Header:
The header consists of a series of lines. Each header field consists of a single line of
ASCII text specifying field name, colon and value. The main header fields related to
message transport are:
To: It specifies the DNS address of the primary recipient(s).
CC: It refers to carbon copy. It specifies address of secondary recipient(s).
BCC: It refers to blind carbon copy. It is very similar to Cc. The only difference
between Cc and Bcc is that it allow user to send copy to the third party without
primary and secondary recipient knowing about this.
From: It specifies name of person who wrote message.
Sender: It specifies e-mail address of person who has sent message.
Received: It refers to identity of sender‘s, data and also time message was
received. It also contains the information which is used to find bugs in routing
system. Return-Path: It is added by the message transfer agent. This part is used
to specify how to get back to the sender.
3. Body:
The body of a message contains text that is the actual content/message that needs to
be sent, such as ―Employees who are eligible for the new health care program should
contact their supervisors by next Friday if they want to switch.‖ The message body also
may include signatures or automatically generated text that is inserted by the sender‘s
email system.
What do you mean by network topologies? What are the major types of network
topologies? (2016-Winter) (2015-Winter) (2013-Winter)
Ans.
There are five types of topology in computer
networks: These are
1. Mesh Topology
2. Star Topology
3. Bus Topology
4. Ring Topology
5. Hybrid Topology
Mesh Topology
In mesh topology each device is connected to every other device on the network
through a dedicated point-to-point link. When we say dedicated it means that the link
only carries data for the two connected devices only. Let‘s say we have n devices in the
network then each device must be connected with (n-1) devices of the network. Number
of links in a mesh topology of n devices would be n(n-1)/2.
Advantages of Mesh topology
1. No data traffic issues as there is a dedicated link between two devices which means
the link is only available for those two devices.
2. Mesh topology is reliable and robust as failure of one link doesn‘t affect other links
and
the communication between other devices on the network.
3. Mesh topology is secure because there is a point to point link thus unauthorized
access is not possible.
4. Fault detection is easy.
Disadvantages of Mesh topology
1. Amount of wires required to connected each system is tedious and headache.
2. Since each device needs to be connected with other devices, number of
I/O ports required must be huge.
3. Scalability issues because a device cannot be connected with large number of
devices with a dedicated point to point link.
Star Topology
In star topology each device in the network is connected to a central device called
hub. Unlike Mesh topology, star topology doesn‘t allow direct communication between
devices; a device must have to communicate through hub. If one device wants to send data
to other device, it has to first send the data to hub and then the hub transmit that data to the
designated device.
Advantages of Star topology
1. Less expensive because each device only need one I/O port and needs to be
connected with hub with one link.
2. Easier to install
3. Less amount of cables required because each device needs to be connected with
the hub only.
4. Robust, if one link fails, other links will work just fine.
5. Easy fault detection because the link can be easily identified.
Disadvantages of Star topology
1. If hub goes down everything goes down, none of the devices can work without hub.
2. Hub requires more resources and regular maintenance because it is the central
system of star topology.
Bus Topology
In bus topology there is a main cable and all the devices are connected to this main
cable through drop lines. There is a device called tap that connects the drop line to the main
cable. Since all the data is transmitted over the main cable, there is a limit of drop lines and the
distance a main cable can have.
Advantages of bus topology
1. Easy installation, each cable needs to be connected with backbone cable.
2. Less cables required than Mesh and star topology
Disadvantages of bus topology
1. Difficultly in fault detection.
2. Not scalable as there is a limit of how many nodes you can connect with backbone cable.
Ring Topology
In ring topology each device is connected with the two devices on either side of it.
There are two dedicated point to point links a device has with the devices on the either side
of it. This structure forms a ring thus it is known as ring topology. If a device wants to send
data to another device then it sends the data in one direction, each device in ring topology
has a repeater, if the received data is intended for other device then repeater forwards this
data until the intended device receives it.
Advantages of Ring Topology
1. Easy to install.
2. Managing is easier as to add or remove a device from the topology only two
links are required to be changed.
Disadvantages of Ring Topology
1. A link failure can fail the entire network as the signal will not travel forward
due to failure.
2. Data traffic issues, since all the data is circulating in a ring.
Hybrid topology
A combination of two or more topology is known as hybrid topology. For example a
combination of star and mesh topology is known as hybrid topology.
Advantages of Hybrid topology
1. We can choose the topology based on the requirement for example, scalability is
our concern then we can use star topology instead of bus technology.
2. Scalable as we can further connect other computer networks with the existing
networks with different topologies.
Disadvantages of Hybrid topology
1. Fault detection is difficult.
2. Installation is difficult.
3. Design is complex so maintenance is high thus expensive.
EXERCISE
Short Answer Type Questions.
******************
CHAPTER – 4: FILE MANAGEMENT AND DATA PROCESSING
Concept of File and Folder
Concept of file and folder: -
In earlier DOS based system, we had organized data into files and directories.
In GUI based operating system, such as window, we have file and folders, in which data
are organized during storage in computer memory.
However, the unit of raw data in binary format is either byte (B) or kilobyte(KB) or
megabyte(MB) or gigabyte (GB).
A byte is smallest unit of information. It is used to measure the size of our documents.
1Byte=1B=8bits
1KB=210Bytes=1024Bytes
1MB= 210KB= 1024KB
1GB=210MB= 1024MB
1TB=210GB= 1024GB
Files:
Files are the most basic unit of data that user can store on a disk. A file is the common
storage unit in a computer.
All program and data are contained in a file and the computer needs and writes files.
In every program, image, video, song and document are stored in a file.
It is possible to move a file from one folder to another.
One can create, save, open, move and delete files.
There are different types of files depending on the type of information they contain. There
are image files etc.
The files are assigned a type of file which can be known from the extension of the file
name.
The file name can have up to 255 character, it can contain letter, number, blank space
and special characters like dashes, underlines, etc. but there is a group that cannot be
used (―, /,
>, <, |)
File extension files are identified by a short "extension" at the end of their name.
Ex: Soumya.jpg is a JPEG image
Chandan.doc is a Microsoft word doc
ABC.exe is an executable application in windows.
Folders:
A folder is a collection of multiple files.
A folder holds one or more files and it can be empty with just a name.
Folder can also store other folders called subfolders.
Folders were also called "directories" in operating systems before windows.
It would become almost possible to manage hundreds of files in your computer.
Different between a file and a folder:
File:
File store data, whether text, music or item.
Files are taking spaces on computer memory.
Each file has its own extension.
Easily move or copy data from one file to another.
Cannot create any folder or subfolder with in a file.
Folder:
A folder stores files and other folders.
Folders are not taking space on computer memory.
Folders do not have any extension.
Copy or move files from one folder to another folder.
Can create different types of files or sub folders in a folder.
Data Storage:
Data storage is the holding of data in an electromagnetic from for access by a computer
processor.
There are two kinds of storage:
a) Primary storage is data that is held in RAM and other memory devices that are built into
computers.
b) Secondary storage is data that is stored on external storage devices such as hard disks,
tapes, CD, Pen drive etc.
Following are some main devices for data storage:
Hard disks
Floppy disks
Optical disks
CD
Pen drives
Flat memory card/memory card
Data Processing:
Data processing must be processed in order to convert it into information.
For this purpose, different operations may be performed on data.
Data processing is defined as a sequence of operations on data to convert it into useful
information.
The data processing can be accomplished through following methods:
1. Manual Data Processing:
In this method, data is processed manually without using any machine or tool to
get required results.
In manual data processing, all the calculations and logical operations are
performed manually on the data.
Ex: Mark sheets, fee receipts
2. Mechanical Data Processing:
In this method, data is processed by using different devices like type writers,
mechanical printers or other mechanical devices.
Examination board and printing press use mechanical data processing devices
frequently.
3. Electronic Data Processing:
It is the modern technique to process data.
The data is processed through computer; data and set of instructions are given to
the computer as input and the data according to the given set of instructions.
The computer is also known as electronic data processing machine.
Ex: results of students are prepared through computers.
Data Retrieval:
Data is one of the most important assets of any business.
Data recovery refers to the whole process of salvaging this lost data that is corrupted,
failed, damaged or inaccessible.
Lost files can occur because of any of the below possibilities.
1) File was mistakenly deleted.
2) File was corrupted or deleted by scandisk.
3) Another program deleted the file.
4) File is password protected.
Following are some different methods of data recovery: -
1) Physical damage to storage devices:
Different failure can cause physical damage to your storage media.
2) Media errors and corrupt partitions and file systems:
In some cases, media errors or damage to the file system or partition table can
make the data on a hard drive to be unreadable.
3) Online data recovery:
This is another popular method of data recovery Sydney business use to restore
deleted or lost files.
It is a method of data recovery that is performed over the internet without
necessarily having the computer or the drive in possession.
Solved Questions
Short Answer Type Questions.
Ans:-.
Sl. No. Key File Folder
Ans:-i.
I. It stands for Indexed Sequential Access Method.
II. ISAM is a method for creating, maintaining, and manipulating computer files of data
so that records can be retrieved sequentially or randomly by one or more keys.
III. In this method, each record has the address of its data block, searching a record in
a huge database is quick and easy.
IV. This method supports range retrieval and partial retrieval of records.
Q. 3 Define OCR.
Ans:-
I. Stands for "Optical Character Recognition.
II. OCR is a technology that recognizes text within a digital image.
III. It is commonly used to recognize text in scanned documents, but it serves many
other purposes as well.
Ans:-A Folder is a collection of tables, charts, or other outputs in the Report tree.
They created by right-clicking on the Report tree and selecting Add Folder.
Folders are also called directories because of the way they organize data within the
file system of a storage device.
Q. 1 What is file access? Explain the various type of file access method. (2014-Winter)
(2015- Winter)
Ans:- A file access definition can control access to data in specified tables and columns, or to
tables and columns for which access is not granted explicitly. You define access
permissions by creating an access list for a table, column, or the default.
When a file is used, information is read and accessed into computer memory and there
are several ways to access this information of the file. Some systems provide only one
access method for files.
There are three ways to access a file into a computer system: Sequential- Access,
Direct Access, Index sequential Method.
1. Sequential Access –
Data is accessed one record right after another record in an order. When we use read
command, it move ahead pointer by one. When we use write command, it will allocate
memory and move the pointer to the end of the file. Such a method is reasonable for
tape.
2. Direct Access –
Another method is direct access method also known as relative access method. A
filed- length logical record that allows the program to read and write record rapidly.
in no particular order. The direct access is based on the disk model of a file since
disk allows random access to any file block. For direct access, the file is viewed as
a numbered sequence of block or record. Thus, we may read block 14 then block
59 and then we can write block 17. There is no restriction on the order of reading
and writing for a direct access file.
3. Index sequential method –
It is the other method of accessing a file which is built on the top of the sequential
access method. These methods construct an index for the file. The index, like an
index in the back of a book, contains the pointer to the various blocks. To find a
record in the file, we first search the index and then by the help of pointer we access
the file directly.
Q. 2 Discuss about the Data storage devices.
Ans:- A storage device is a piece of computer hardware used for saving, carrying and pulling
out data. It can keep and retain information short-term or long-term. It can be a device
inside or outside a computer or server. Other terms for storage device is storage
medium or storage media.
A storage device is one of the basic elements of any computer device. It almost
saves all data and applications in a computer except for hardware firmware. It comes
in different shapes and sizes depending on the needs and functionalities.
There are two different types of storage devices:
Primary Storage Device Secondary Storage Device
Size Smaller Larger
Data Retention Temporary Permanent
Location Internal Internal / External
E.g RAM, ROM Magnetic Storage Device,
Floppy diskette, Hard drive,
Magnetic strip , Cassette
tape, etc.
EXERCISE
Short Answer Type Questions.
What is the difference between Random Access method and sequential access
method?
(2017-Winter)
What is Data processing and discuss about some operations that can be performed on
data?
Long Answer Type Questions.
What do you mean by file access? Explain the various types of file access
techniques. (2017- Summer)
Discuss about the Data Retrieval.
***********
CHAPTER –5: PROBLEM SOLVING METHODOLOGY
Problem solving
Solving problems is the core of computer science. Programmers must first understand
how a human solves a problem, then understand how to translate this "algorithm" into
something a computer can do, and finally how to "write" the specific syntax (required by a
computer) to get the job done. It is sometimes the case that a machine will solve a problem in
a completely different way than a human.
Computer Programmers are problem solvers. In order to solve a problem on a computer
you must:
1. Know how to represent the information (data) describing the problem.
2. Determine the steps to transform the information from one representation into another
Definition:
An algorithm is a well-defined procedure that allows a computer to solve a problem.
Algorithm is defined as the step-by-step solution of problem in user‘s language.
It is considered as an effective procedure for solving a problem in finite number of steps.
Another way to describe an algorithm is a sequence of unambiguous instructions.
In fact, it is difficult to think of a task performed by your computer that does not use
algorithms.
Pseudocode
It is a concise description algorithm in English language that uses programming language
constructs. It contains outlines of the program that can be easily converted to program. It focuses
on the logic of the algorithm without giving stress on the syntax of programming language. This
is meant for understanding the logic of the program easily. Flowchart can be considered as an
alternative to pseudo code. Several constructs/key words of programming language can be used
in the algorithm to write the pseudo code.
Flowchart
Flowchart is a graphical or symbolic representation of the process of solution to a problem
or algorithm. It helps to visualize the complex logic of the solution of the problem in a simplified
manner through diagrammatic representation. Each step of the algorithm is presented using a
symbol and a short description. The different symbols used for the flowchart are
Symbol Purpose Description
Indicates the flow of logic by connecting
Flow line symbols.
Represents the start and the end of a
Terminal(Stop/Start) flowchart.
Very High Level language otherwise called as 4GL uses nonprocedural logical
statements.
A typical example of 4GL is the query language such as SQL.
Structured Programming Language
Structured Programming is also known as Modular Programming. In this type of
programming technique, the program shall be broken into several modules. This helps in
managing memory efficiently as the required module of the program will be loaded into the
memory only and not the entire program. This will also enhance code reuse. Writing,
understanding, debugging and modifying the individual module of the program is also easier.
Examples of Problem solving through Flowchart
Example
1. Add two numbers entered by theuser.
Start
Read n1 and n2
2. Flowchart to calculate the average of two numbers
Start
Read num1,
num2
(num1+num2)/2
Start
Input Years
Input Rate
Print Interest
4. Flowchart to calculate the area of a circle.
Start
Input r
Print Area
Start
Read a,b,c
Area= − − −
Print Area
6. Find the largest among three different numbers entered by the user.
Start
Read a, b and c
False True
print c print a
7. Find all the roots of a quadratic equation ax2+bx+c=0
Start
Declare variables a,
b,c, D,x1,x2,rp and ip
Calculate discriminant
D b2-4ac
True False
Display r1 and r2
8. Flowchart to Determine and Output Whether Number N is Even or Odd
Start
YES
Is Remainder NO
Answer=EVE
Output Answer
Start
Read
Yes
Print x
No
Yes
Print y
Start
Read temp
YES NO
Output Answer
Start
Input m1,m2,m3,m4
YES NO
YES
Solved Questions
Short Answer Type Questions.
Ans:- An algorithm is a set of instructions designed to perform a specific task. This can be a
simple process, such as multiplying two numbers, or a complex operation, such as
playing a compressed video file. Algorithm is defined as the step-by-step solution of
problem in user‘s language. It is considered as an effective procedure for solving a
problem in finite number of step.
Ans:-
1. Input specified:
The input is the data to be transformed during the computation to produce the output.
An algorithm should have 0 or more well-defined inputs.
2. Output specified:
The output is the data resulting from the computation (your intended result). An
algorithm should have 1 or more well-defined outputs, and should match the desired
output.
3. Effectiveness:
For an algorithm to be effective, it means that all those steps that are required to get
to output must be feasible with the available resources.
4. Independent:
An algorithm should have step-by-step directions, which should be independent of any
programming code. It should be such that it could be run on any of the programming
languages.
Ans:-
A flowchart describes the steps software takes to process information, from the beginning
data inputs, through processing and logical decisions, to the point where the program
ends.
Software developers use flowcharts to plan out how computer applications work before
programmers write the code.
It helps to visualize the complex logic of the solution of the problem in a simplified
manner through diagrammatic representation
Each step of the algorithm is presented using a symbol and a short description.
Winter) Ans:-
S.NO Algorithm
Start
Read a, b, c
Avg.=Sum/3
Start
Read C
F=(9*C)/5-FQ2
Display F
Stop
EXERCISE
Short Answer Type Questions.
******************
CHAPTER – 6: OVERVIEW OF C PROGRAMMING LANGUAGE
Constants, Variables and Data types in C
The C Language
C is a professional programmer's language. It was designed to get in one's way as little as
possible. Kernighan and Ritchie wrote the original language definition in their book, The C
Programming Language (below), as part of their research at AT&T. Unix and C++ emerged from
the same labs. For several years I used AT&T as my long distance carrier in appreciation of all
that CS research, but hearing "thank you for using AT&T" for the millionth time has used up that
goodwill.
Important Points
The C Language is developed by Dennis Ritchie for creating system applications that
directly interact with the hardware devices such as drivers, kernels, etc.
C programming is considered as the base for other programming languages, that is
why it is known as mother language.
It can be defined by the following ways:
1. Mother language
2. System programming language
3. Procedure-oriented programming language
4. Structured programming language
5. Mid-level programming language
1) C as a mother language
C language is considered as the mother language of all the modern programming
languages because most of the compilers, JVMs, Kernels, etc. are written in C language, and
most of the programming languages follow C syntax, for example, C++, Java, C#, etc. It provides
the core concepts like the array, strings, functions, file handling, etc. that are being used in many
languages like C++, Java, C#, etc.
2) C as a system programming language
A system programming language is used to create system software. C language is a
system programming language because it can be used to do low-level programming (for
example driver and kernel). It is generally used to create hardware devices, OS, drivers, kernels,
etc. For example, Linux kernel is written in C.
It can't be used for internet programming like Java, .Net, PHP, etc.
3) C as a procedural language
A procedure is known as a function, method, routine, subroutine, etc. A procedural
language specifies a series of steps for the program to solve the problem.
A procedural language breaks the program into functions, data structures, etc.
C is a procedural language. In C, variables and function prototypes must be declared
before being used.
4) C as a structured programming language
A structured programming language is a subset of the procedural language. Structure
means to break a program into parts or blocks so that it may be easy to understand.
In the C language, we break the program into parts using functions. It makes the program
easier to understand and modify.
In 1978, Brian Kernighan and Dennis M. Ritchie wrote the seminal work The C
Programming Language, which is now the standard reference book for C.
A formal ANSI standard for C was produced in 1989.
In 1986, a descendant of C, called C++ was developed by Bjarne Stroustrup, which is
in wide use today. Many modern languages such as C#, Java and Perl are based on C
and C++.
Using C language scientific, business and system-level applications can be developed
easily.
Constants
In C programming language, a constant is similar to the variable but the constant hold only
one value during the program execution. That means, once a value is assigned to the constant,
that value can't be changed during the program execution. Once the value is
assigned to the constant, it is fixed throughout the program. A constant can be defined as
follows...
A constant is a named memory location which holds only one value throughout the program
execution.
In C programming language, a constant can be of any data type like integer, floating-
point, character, string and double, etc.,
Integer constants
An integer constant can be a decimal integer or octal integer or hexadecimal integer. A
decimal integer value is specified as direct integer value whereas octal integer value is prefixed
with 'O' and hexadecimal value is prefixed with 'OX'.
An integer constant can also be unsigned type of integer constant or long type of integer
constant. Unsigned integer constant value is suffixed with 'u' and long integer constant value is
suffixed with 'l' whereas unsigned long integer constant value is suffixed with 'ul'.
Example
125 ---- > Decimal Integer Constant
O76 ---- > Octal Integer Constant
OX3A ----- >Hexa Decimal Integer Constant
50u ----- > Unsigned Integer Constant
30l ----- > Long Integer Constant
100ul ---- > Unsigned Long Integer Constant
String Constants
A string constant is a collection of characters, digits, special symbols and escape
sequences that are enclosed in double quotations.
We define string constant in a single line as follows. .. "This is Diploma smart class"
We can define string constant using multiple lines as follows...
" This\
is\
Diploma smart class "
We can also define string constant by separating it with white space as follows...
Example
int number;
The above declaration tells to the compiler that allocates 2 bytes of memory with the
name
―number‖ and allows only integer values into that memory location.
Data types
Data used in c program is classified into different types based on its properties. In the C
programming language, a data type can be defined as a set of values with similar characteristics.
All the values in a data type have the same properties.
Data types in the c programming language are used to specify what kind of value can be
stored in a variable. The memory size and type of the value of a variable are determined by the
variable data type. In a c program, each variable or constant or array must have a data type and
this data type specifies how much memory is to be allocated and what type of values are to be
stored in that variable or constant or array. The formal definition of a data type is as follows...
The Data type is a set of value with predefined characteristics. Data types are used to
declare variable, constants, arrays, pointers, and functions.
In the c programming language, data types are classified as follows...
Primary data types (Basic data types OR Predefined data types)
Derived data types (Secondary data types OR User-defined data types)
Enumeration data types
Void data type
The integer data type is a set of whole numbers. Every integer value does not have the
decimal value. We use the keyword "int" to represent integer data type in c. We use the keyword
int to declare the variables and to specify the return type of a function. The integer data type is
used with different type modifiers like short, long, signed and unsigned. The following table
provides complete details about the integer data type.
Floating-point data types are a set of numbers with the decimal value. Every floating- point
value must contain the decimal value. The floating-point data type has two variants...
float
double
We use the keyword "float" to represent floating-point data type and "double" to represent
double data type in c. Both float and double are similar but they differ in the number of decimal
places. The float value contains 6 decimal places whereas double value contains 15 or 19
decimal places. The following table provides complete details about floating-point data type.
Character data type
The character data type is a set of characters enclosed in single quotations. The following
table provides complete details about the character data type.
The following table provides complete information about all the data types in c programming
language...
printf() function
The printf() function is used to print string or data values or a combination of string and
data values on the output screen (User screen). The printf() function is built-in function defined
in a header file called "stdio.h". When we want to use printf() function in our program we need
to include the respective header file (stdio.h) using the #include statement. The printf() function
has the following syntax...
Syntax:
printf("message to be display!!!");
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
printf("Hello! Welcome to Diploma smart class!!!");
}
In the above example program, we used the printf() function to print a string on to the output
screen.
Output of the program is Hello! Welcome to Diploma smart class!!!
The printf() function is also used to display data values. When we want to display data
values we use format string of the data value to be displayed.
Syntax:
printf("format string",variableName);
Example Program:
#include<stdio.h>
#include<conio.h>
void main()
{
int i = 10; float x = 5.5;
printf("%d %f",i, x);
}
In the above example program, we used the printf() function to print data values of variables
i and x on to the output screen. Here i is an integer variable so we have used format string %d
and x is a float variable so we have used format string %f.
The printf() function can also be used to display string along with data values.
To display the output in different lines or as we wish, we use some special characters
called escape sequences. Escape sequences are special characters with special functionality
used in printf() function to format the output according to the user requirement. In the C
programming language, we have the following escape sequences...
Escape sequence Meaning
\n Moves the cursor to New Line
\t Inserts Horizontal Tab (5 characters space)
\v Inserts Vertical Tab (5 lines space)
\a Beep sound
\b Backspace (removes the previous character
from
its current position)
\\ Inserts Backward slash symbol
\? Inserts Question mark symbol
\' Inserts Single quotation mark symbol
\" Inserts Double quotation mark symbol
#include<stdio.h>
#include<conio.h>
void main()
{
printf("Welcome to\n");
printf("Diploma smart class\n");
printf("the perfect website for learning");
}
Output:-
Welcome to
Diploma smart class
the perfect website for learning
putchar() function
The putchar() function is used to display a single character on the output screen. The
putchar() functions prints the character which is passed as a parameter to it and returns the
same character as a return value. This function is used to print only a single character. To print
multiple characters we need to write multiple times or use a looping statement. Consider the
following example program...
#include<stdio.h>
#include<conio.h>
void main()
{
char ch = 'A';
putchar(ch);
}
puts() function
The puts() function is used to display a string on the output screen. The puts() functions
prints a string or sequence of characters till the newline. Consider the following example
program...
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
char name[30];
printf("\nEnter your favourite website: ");
gets(name);
puts(name);
}
fprintf() function
The fprintf() function is used with the concept of files. The fprintf() function is used to print
a line into the file. When you want to use fprintf() function the file must be opened in writing
mode.
Input Functions
C programming language provides built-in functions to perform input operations. The input
operations are used to read user values (input) from the keyboard. The c programming language
provides the following built-in input functions.
scanf()
getchar()
getch()
gets()
fscanf()
scanf() function
The scanf() function is used to read multiple data values of different data types from the
keyboard. The scanf() function is built-in function defined in a header file called "stdio.h". When
we want to use scanf() function in our program, we need to include the respective header file
(stdio.h) using #include statement. The scanf() function has the following syntax...
Syntax:
scanf("format strings",&variableNames);
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
int i;
printf("\nEnter any integer value: ");
scanf("%d",&i);
printf("\nYou have entered %d number",i);
}
In the above example program, we used the scanf() function to read an integer value
from the keyboard and store it into variable 'i'.
Output:-
Enter any integer value: 53
You have entered 53 number
The scanf() function is also used to read multiple data values of different or the same
data types. Consider the following example program...
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
int i; float x;
printf("\nEnter one integer followed by one float value : ");
scanf("%d%f",&i, &x);
printf("\ninteger value = %d, float value = %f",i, x);
}
Output:-
Enter one integer followed by one float value : 59 32.8
integer value = 59, float value =32.8
In the above example program, we used the scanf() function to read one integer value and
one float value from the keyboard. Here 'i' is an integer variable so we have used format string
%d, and 'x' is a float variable so we have used format string %f.
The scanf() function returns an integer value equal to the total number of input values read
using scanf function.
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
int i,a,b;
float x;
printf("\nEnter two integers and one float : ");
i = scanf("%d%d%f",&a, &b, &x);
printf("\nTotal inputs read : %d",i);
}
getchar() function:
The getchar() function is used to read a character from the keyboard and return it to the
program. This function is used to read a single character. To read multiple characters we need
to write multiple times or use a looping statement. Consider the following example program...
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
char ch;
printf("\nEnter any character : ");
ch = getchar();
printf("\nYou have entered : %c\n",ch);
}
Output:-
Enter any character :H
You have entered :H
getch() function
The getch() function is similar to getchar function. The getch() function is used to read a
character from the keyboard and return it to the program. This function is used to read a single
character. To read multiple characters we need to write multiple times or use a looping
statement. Consider the following example program...
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
char ch;
printf("\nEnter any character : ");
ch = getch();
printf("\nYou have entered : %c",ch);
}
gets() function
The gets() function is used to read a line of string and stores it into a character array. The
gets() function reads a line of string or sequence of characters till a newline symbol enters.
Consider the following example program...
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
char name[30];
printf("\nEnter your favourite website: ");
gets(name);
printf("%s",name);
}
fscanf() function
The fscanf() function is used with the concept of files. The fscanf() function is used to read
data values from a file. When you want to use fscanf() function the file must be opened in reading
mode.
Operators, Expressions, Type conversion & Typecasting
Operators
An operator is a symbol used to perform arithmetic and logical operations in a program.
That means an operator is a special symbol that tells the compiler to perform mathematical or
logical operations. C programming language supports a rich set of operators that are classified
as follows.
Arithmetic Operators
Relational Operators
Logical Operators
Increment & Decrement Operators
Assignment Operators
Bitwise Operators
Conditional Operator
Special Operators
Arithmetic Operators (+, -, *, /, %)
The arithmetic operators are the symbols that are used to perform basic mathematical
operations like addition, subtraction, multiplication, division and percentage modulo. The
following table provides information about arithmetic operators.
The addition operator can be used with numerical data types and character data type.
When it is used with numerical values, it performs mathematical addition and when it is
used with character data type values, it performs concatenation (appending).
The remainder of the division operator is used with integer data type only.
Logical AND - Returns TRUE only if all conditions are TRUE, if any of the conditions is
FALSE then complete condition becomes FALSE.
Logical OR - Returns FALSE only if all conditions are FALSE, if any of the conditions is
TRUE then complete condition becomes TRUE.
Increment & Decrement Operators (++ & --)
The increment and decrement operators are called unary operators because both need
only one operand. The increment operators add one to the existing value of the operand and the
decrement operator subtracts one from the existing value of the operand. The following table
provides information about increment and decrement operators.
The increment and decrement operators are used in front of the operand (++a) or after the
operand (a++). If it is used in front of the operand, we call it as pre-increment or pre- decrement
and if it is used after the operand, we call it as post-increment or post-decrement.
Pre-Increment or Pre-Decrement
In the case of pre-increment, the value of the variable is increased by one before the
expression evaluation. In the case of pre-decrement, the value of the variable is decreased by
one before the expression evaluation. That means, when we use pre-increment or pre-
decrement, first the value of the variable is incremented or decremented by one, then the
modified value is used in the expression evaluation.
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
int i = 5,j;
j = ++i; // Pre-Increment
printf("i = %d, j = %d",i,j);
}
Post-Increment or Post-Decrement
In the case of post-increment, the value of the variable is increased by one after the
expression evaluation. In the case of post-decrement, the value of the variable is decreased by
one after the expression evaluation. That means, when we use post-increment or post-
decrement, first the expression is evaluated with existing value, then the value of the variable is
incremented or decremented by one.
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
int i = 5,j;
j = i++; // Post-Increment
printf("i = %d, j = %d",i,j);
}
Assignment Operators (=, +=, -=, *=, /=, %=)
The assignment operators are used to assign right-hand side value (Rvalue) to the left-
hand side variable (Lvalue). The assignment operator is used in different variants along with
arithmetic operators. The following table describes all the assignment operators in the C
programming language.
The conditional operator is also called a ternary operator because it requires three
operands. This operator is used for decision making. In this operator, first we verify a condition,
then we perform one operation out of the two operations based on the condition result. If the
condition is TRUE the first option is performed, if the condition is FALSE the second option is
performed. The conditional operator is used with the following syntax.
Condition ? TRUE Part : FALSE Part;
Example
A = (10<15)?100:200; ⇒A value is 100
Special Operators (sizeof, pointer, comma, dot, etc.)
The following are the special operators in c programming language.
sizeof operator
This operator is used to find the size of the memory (in bytes) allocated for a variable.
This operator is used with the following syntax.
sizeof(variable Name);
Example
sizeof(A); ⇒the result is 2 if A is an integer
Pointer operator (*)
This operator is used to define pointer variables in c programming language.
Comma operator (,)
This operator is used to separate variables while they are declaring, separate the
expressions in function calls, etc.
Type Conversion
Type Casting
Type Conversion
The type conversion is the process of converting a data value from one data type to another
data type automatically by the compiler. Sometimes type conversion is also called implicit type
conversion. The implicit type conversion is automatically performed by the compiler.
For example, in c programming language, when we assign an integer value to a float
variable the integer value automatically gets converted to float value by adding decimal value
0. And when a float value is assigned to an integer variable the float value automatically gets
converted to an integer value by removing the decimal value. To understand more about type
conversion observe the following...
int i = 10 ;
float x = 15.5 ;
char ch = 'A' ;
i = x ; =======> x value 15.5 is converted as 15 and assigned to variable i
x = i ; =======> Here i value 10 is converted as 10.000000 and assigned to variable x
i = ch ; =======> Here the ASCII value of A (65) is assigned to i
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
int i = 95 ;
float x = 90.99 ;
char ch = 'A' ;
i=x;
printf("i value is %d\n",i);
x=i;
printf("x value is %f\n",x);
i = ch ;
printf("i value is %d\n",i);
}
In the above program, we assign i = x, i.e., float variable value is assigned to the integer
variable. Here, the compiler automatically converts the float value (90.99) into integer value
(90) by removing the decimal part of the float value (90.99) and then it is assigned to variable i.
Similarly, when we assign x = i, the integer value (90) gets converted to float value (90.000000)
by adding zero as the decimal part.
Typecasting
Typecasting is also called an explicit type conversion. Compiler converts data from one
data type to another data type implicitly. When compiler converts implicitly, there may be a data
loss. In such a case, we convert the data from one data type to another data type using explicit
type conversion. To perform this we use the unary cast operator. To convert data from one type
to another type we specify the target data type in parenthesis as a prefix to the data value that
has to be converted.
The general syntax of typecasting is as follows.
(TargetDatatype) DataValue
Example
int totalMarks = 450, maxMarks = 600 ;
float average ;
average = (float) totalMarks / maxMarks * 100 ;
In the above example code, both totalMarks and maxMarks are integer data values. When
we perform totalMarks / maxMarks the result is a float value, but the destination (average)
datatype is a float. So we use type casting to convert totalMarks and maxMarks into float data
type.
Example Program
#include<stdio.h>
#include<conio.h>
int main()
{
int a, b, c ;
float avg ;
printf( "Enter any three integer values : ");
scanf(―%d%d%d‖,a,b, c);
avg = (a + b + c) / 3 ;
printf("avg before casting = &f", avg \n);
avg = (float)(a + b + c) / 3 ;
printf("avg after casting = %f",avg\n);
return 0;
}
Comments
Comments in C are enclosed by slash/star pairs: /* .. comments .. */ which may cross
multiple lines. C++ introduced a form of comment started by two slashes and extending to the
end of the line:
// comment until the line end
The // comment form is so handy that many C compilers now also support it, although it is
not technically part of the C language.
Along with well-chosen function names, comments are an important part of well written
code. Comments should not just repeat what the code says. Comments should describe what
the code accomplishes which much more is interesting than a translation of what each statement
does. Comments should also narrate what is tricky or non-obvious about a section of code.
Decision Control and Looping Statements (If, If-else, If-else-if,
Switch, While, Do- while, For, Break, Continue & Goto)
Control Structures
C uses curly braces ({}) to group multiple statements together. The statements execute in
order. Some languages let you declare variables on any line (C++). Other languages insist that
variables are declared only at the beginning of functions (Pascal). C takes the middle road --
variables may be declared within the body of a function, but they must follow a '{'. More modern
languages like Java and C++ allow you to declare variables on any line, which is handy.
Decision-making statements are the statements that are used to verify a given condition
and decide whether a block of statements gets executed or not based on the condition
result.
In the c programming language, there are two decision-making statements they are as follows.
1. if statement
2. switch statement
if statement in c
In c, if statement is used to make decisions based on a condition. The if statement verifies the
given condition and decides whether a block of statements are executed or not based on the
condition result. In c, if statement is classified into four types as follows...
1. Simple if statement
2. if-else statement
3. Nested if statement
4. if-else-if statement (if-else ladder)
Simple if statement
Simple if statement is used to verify the given condition and executes the block of statements
based on the condition result. The simple if statement evaluates specified condition. If it is TRUE,
it executes the next statement or block of statements. If the condition is FALSE, it skips the
execution of the next statement or block of statements. The general syntax and execution flow of
the simple if statement is as follows.
Simple if statement is used when we have only one option that is executed or skipped based
on a condition.
if-else statement
The if-else statement is used to verify the given condition and executes only one out of the
two blocks of statements based on the condition result. The if-else statement evaluates the
specified condition. If it is TRUE, it executes a block of statements (True block). If the condition is
FALSE, it executes another block of statements (False block). The general syntax and execution
flow of the if-else statement is as follows.
The if-else statement is used when we have two options and only one option has to be
executed based on a condition result (TRUE or FALSE).
Nested if statement
Writing a if statement inside another if statement is called nested if statement. The
general syntax of the nested if statement is as follows.
The nested if statement can be defined using any combination of simple if & if-else
statements.
The if-else-if statement can be defined using any combination of simple if & if-else statements.
Examples:
Program 1:(Simple if statement)
#include <stdio.h>
int main()
{
int x = 20;
int y = 22; if (x<y)
{
printf("Variable x is less than y");
}
return 0;
}
Output:
Variable x is less than y
Output: I am Not in if
#include <stdio.h>
int main()
{
int i = 20;
if (i< 15)
printf("i is smaller than 15");
else
printf("i is greater than 15");
return 0;
}
Output: Enter your age:14 You are not eligible for voting
//Nested if else
if (var1 > var2)
{
printf("var1 is greater than var2\n");
}
else
{
printf("var2 is greater than var1\n");
}
}
Output:
Input the value of var1:12
Input the value of var2:21
var1 is not equal to var2
var2 is greater than var1
Output:
i is smaller than 15
i is smaller than 12 too
Output:
i is 20
Output:
Input the value of var1:12
Input the value of var2:21
var1 is not equal to var2
'switch' statement in C
Consider a situation in which we have many options out of which we need to select only
one option that is to be executed. Such kind of problems can be solved using nested if statement.
But as the number of options increases, the complexity of the program also gets increased. This
type of problem can be solved very easily using a switch statement. Using the switch statement,
one can select only one option from more number of options very easily. In the switch statement,
we provide a value that is to be compared with a value associated with
each option. Whenever the given value matches the value associated with an option, the
execution starts from that option. In the switch statement, every option is defined as a case.
The switch statement has the following syntax and execution flow diagram.
The switch statement contains one or more cases and each case has a value associated
with it. At first switch statement compares the first case value with the switchValue, if it gets
matched the execution starts from the first case. If it doesn't match the switch statement compares
the second case value with the switch Value and if it is matched the execution starts from the
second case. This process continues until it finds a match. If no case value matches with the
switchValue specified in the switch statement, then a special case called default is executed.
When a case value matches with the switch Value, the execution starts from that particular case.
This execution flow continues with the next case statements also. To avoid this, we use the
"break" statement at the end of each case. That means the break statement is used to terminate
the switch statement. However, it is optional.
Examples:
Program 1:
#include<stdio.h>
#include<conio.h>
void main()
{
int n ;
clrscr() ;
printf("Enter any digit: ") ;
scanf("%d", &n) ;
switch( n )
{
case 0: printf("ZERO") ;
break ;
case 1:printf("ONE") ;
break ;
case 2:printf("TWO") ;
break ;
case 3: printf("THREE") ;
break ;
case 4: printf("FOUR") ;
break ;
case 5: printf("FIVE") ;
break ;
case 6: printf("SIX") ;
break ;
case 7: printf("SEVEN") ;
break ;
case 8: printf("EIGHT") ;
break ;
case 9: printf("NINE") ;
break ; default: printf("Not a Digit") ;
}
getch() ;
}
Output:
Enter any digit: 5
FIVE
Program 2:
#include <stdio.h>
int main()
{
int num=2;
switch(num+2)
{
case 1:printf("Case1: Value is: %d", num);
case 2:printf("Case2: Value is: %d", num);
case 3:printf("Case3: Value is: %d", num);
default:printf("Default: Value is: %d", num);
}
return 0;
}
Looping statements
Consider a situation in which we execute a single statement or block of statements
repeatedly for the required number of times. Such kind of problems can be solved using looping
statements in C. For example, assume a situation where we print a message 100 times. If we
want to perform that task without using looping statements, we have to either write 100 printf
statements or we have to write the same message 100 times in a single printf statement. Both
are complex methods. The same task can be performed very easily using looping statements.
again. If it is TRUE, again the same statements get executed. The same process is repeated until
the condition is evaluated to FALSE. Whenever the condition is evaluated to FALSE, the
execution control moves out of the while block.
Examples:
Program 1:
#include<stdio.h>
#include<conio.h>
void main()
{
int n = 0;
clrscr() ;
printf("Even numbers upto 10 are");
while( n<= 10 )
{
if( n%2 == 0)
printf("%d\t", n) ;
n++ ;
}
getch() ;
}
Output:
Even numbers upto10 are0 2 4 6 8 10
Program 2:
#include <stdio.h>
int main()
{
int count=1;
while (count <= 4)
{
printf("%d ", count);
count++;
}
return 0;
}
Output:
1234
'do-while' statement
The do-while statement is used to execute a single statement or block of statements
repeatedly as long as given the condition is TRUE. The do-while statement is also known as the
Exit control looping statement. The do-while statement has the following syntax...
At first, the single statement or block of statements which are defined in do block are
executed. After the execution of the do block, the given condition gets evaluated. If the condition
is evaluated to TRUE, the single statement or block of statements of do block are executed
again.
Once the execution gets completed again the condition is evaluated. If it is TRUE, again
the same statements are executed. The same process is repeated until the condition is evaluated
to FALSE. Whenever the condition is evaluated to FALSE, the execution control moves out of the
while block.
Examples:
Program 1:
#include <stdio.h>
int main()
{
int j=0;
do
{
printf("Value of variable j is: %d\n", j);
j++;
}
while (j<=3);
return 0;
}
Output:
Value of variable j is: 0
Value of variable j is: 1
Value of variable j is: 2
Value of variable j is: 3
Program 2:
#include <stdio.h>
int main()
{
int i=0;
do
{
printf("while vs do-while\n");
}
while(i==1);
printf("Out of loop");
}
Output:
while vs do-while
Out of loop
'for' statement
Thefor statement is used to execute a single
statement or a block of statements repeatedly as long as the
given condition is TRUE.The for statement has the following
syntax and execution flow diagram...
At first, the for statement executes initialization
followed by condition evaluation. If the condition is evaluated
to TRUE, the single statement or block of statements of for
statement are executed. Once the execution gets completed,
the modification statement is executed and again the
condition is evaluated. If it is TRUE, again the same
statements are executed. The same process is repeated until
the condition is evaluated to FALSE. Whenever the condition
is evaluated to FALSE, the execution control moves out of the
for block.
Examples:
Program 1:
// Print the naturalnumbers from 1 to 10
#include <stdio.h>
int main()
{
int i;
for (i = 1; i< 11; ++i)
{
printf("%d ", i);
}
return 0;
}
Output:
1 2 3 4 5 6 7 8 9 10
Program 2:
#include <stdio.h>
int main()
{
for (int i=0; i<2; i++)
{
for (int j=0; j<4; j++)
{
printf("%d, %d\n",i ,j);
}
}
return 0;
}
Output:
0, 0 0, 1 0, 2 0, 3 1, 0 1, 1 1, 2 1, 3
break, continue and goto in C
In c, there are control statements that do not need any condition to control the program
execution flow. These control statements are called as unconditional control statements. C
programming language provides the following unconditional control statements...
break
continue
goto
The above three statements do not need any condition to control the program execution flow.
“break” statement
In C, the break statement is used to perform the following two things...
When a break statement is encountered inside the switch case statement, the execution
control moves out of the switch statement directly. For example, consider the following program.
Examples:
Program 1:
#include<stdio.h>
#include<stdlib.h>
void main ()
{
int i;
for(i = 0; i<10; i++)
{
printf("%d ",i);
if(i == 5)
break;
}
printf("\ncame outside of loop i = %d",i);
}
Output:
012345
came outside of loop i = 5
Program 2:
#include <stdio.h>
int main ()
{
/* local variable definition */
int a = 10;
/* while loop execution */
while( a< 20 )
{
printf("value of a: %d\n", a);
a++;
if( a> 15)
{
break;
/* terminate the loop using break statement */
}
}
return 0;
}
Output:
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
continue statement
The continue statement is used to move the program execution control to the beginning of
the looping statement. When the continue statement is encountered in a looping statement, the
execution control skips the rest of the statements in the looping block and directly jumps to the
beginning of the loop. The continue statement can be used with looping statements like while,
dowhile and for.
When we use continue statement with while and do-while statements the execution control
directly jumps to the condition. When we use continue statement with for statement the execution
control directly jumps to the modification portion (increment/decrement/any modification) of the
for loop.
Examples:
Program 1:
#include<stdio.h>
void main ()
{
int i = 0;
while(i!=10)
{
printf("%d", i);
continue;
i++;
}
}
Output:
Infinite loop
Program 2:
#include<stdio.h>
int main()
{
int i=1;//initializing a local variable
//starting a loop from 1 to 10
for(i=1;i<=10;i++)
{
if(i==5)
{ //if value of i is equal to 5, it will continue the loop
continue;
}
printf("%d \n",i);
} //end of for loop
return 0;
}
Output:
1
2
3
4
6
7
8
9
10
goto statement
The goto statement is used to jump from one line to another line in the program. Using
goto statement we can jump from top to bottom or bottom to top. To jump from one line to another
line, the goto statement requires a label. Label is a name given to the instruction or line in the
program. When we use a goto statement in the program, the execution control directly jumps to
the line with the specified label.
Examples:
Program 1:
#include <stdio.h>
void main()
{
int num,i=1;
printf("Enter the number whose table you want to print:");
scanf("%d",&num);
table: printf("%d x %d = %d\n",num,i,num*i);
i++;
if(i<=10)
goto table;
}
Output:
Enter the number whose table you want to print:10
10 x 1 = 10
10 x 2 = 20
10 x 3 = 30
10 x 4 = 40
10 x 5 = 50
10 x 6 = 60
10 x 7 = 70
10 x 8 = 80
10 x 9 = 90
10 x 10 = 100
Program 2:
#include <stdio.h>
void main()
{
int i, j, k;
for(i=0;i<10;i++)
{
for(j=0;j<5;j++)
{
for(k=0;k<3;k++)
{
printf("%d %d %d\n",i,j,k);
if(j == 3)
{
goto out;
}
}
}
}
out:
printf("came out of the loop");
}
Output:
000
001
002
010
011
012
020
021
022
030
came out of the loop
Programming Assignments using the above features.
Some more Examples:
Program to Check Even or Odd
#include <stdio.h>
int main()
{
int num;
printf("Enter an integer: ");
scanf("%d", &num);
if(num % 2 == 0)// True if num is perfectly divisible by 2
printf("%d is even.", num);
else
printf("%d is odd.", num);
return 0;
}
Output
Enter an integer: 7
7 is odd.
#include <stdio.h>
int main()
{
char c;
int lowercase_vowel, uppercase_vowel;
printf("Enter an alphabet: ");
scanf("%c", &c);
// evaluates to 1 if variable c is a lowercase vowel
lowercase_vowel = (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u');
// evaluates to 1 if variable c is a uppercase vowel
uppercase_vowel = (c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U');
// evaluates to 1 (true) if c is a vowel
if (lowercase_vowel || uppercase_vowel)
printf("%c is a vowel.", c);
else
printf("%c is a consonant.", c);
return 0;
}
Output
Enter an alphabet: G
G is a consonant.
scanf("%d", &year);
// leap year if perfectly visible by 400
if (year % 400 == 0)
{
printf("%d is a leap year.", year);
}
// not a leap year if visible by 100
// but not divisible by 400
else if (year % 100 == 0)
{
printf("%d is not a leap year.", year);
}
// leap year if not divisible by 100
// but divisible by 4
else if (year % 4 == 0)
{
printf("%d is a leap year.", year);
}
// all other years are not leap year else
{
printf("%d is not a leap year.", year);
}
return 0;
}
Output
Enter a year: 1900
1900 is not a leap year
scanf("%d", &n);
// shows error if the user enters a negative integer
if (n < 0)
printf("Error! Factorial of a negative number doesn't exist.");
else
{
for (i = 1; i<= n; ++i)
{
fact *= i;
}
printf("Factorial of %d = %llu", n, fact);
}
return 0;
}
Output
Enter an integer: 5
Factorial of 10 = 120
Multiplication Table Up to 10
#include <stdio.h>
int main()
{
int n, i;
printf("Enter an integer: ");
scanf("%d", &n);
for (i = 1; i<= 10; ++i)
{
printf("%d * %d = %d \n", n, i, n * i);
}
return 0;
}
Output
Enter an integer: 9
9*1=9
9 * 2 = 18
9 * 3 = 27
9 * 4 = 36
9 * 5 = 45
9 * 6 = 54
9 * 7 = 63
9 * 8 = 72
9 * 9 = 81
9 * 10 = 90
To Reverse an Integer number
#include <stdio.h>
int main() {
int n, rev = 0, remainder;
printf("Enter an integer: ");
scanf("%d", &n);
while (n != 0) {
remainder = n % 10;
rev = rev * 10 + remainder;
n /= 10;
}
printf("Reversed number = %d", rev);
return 0;
}
Output
}
return 0;
}
Output
Enter an operator (+, -, *,): *
Enter two operands: 1.54.5
1.5 * 4.5 = 6.75
Solved Questions
(i) Assignment =
Ans:-
C is highly portable and is used for scripting system applications which form a major part
of Windows, UNIX, and Linux operating system. C is a general-purpose programming language
and can efficiently work on enterprise applications, games, graphics, and applications requiring
calculations, etc.
Part of C program
2. int main() – This is the line from where the execution of the program starts.
The main() function starts the execution of any Program.
3. { (Opening bracket) – This indicates the beginning of any function in the program (Here
it indicates the beginning of the main function).
4. /* some comments */ – Whatever is inside /*——-*/ are not compiled and executed; they
are only written for user understanding or for making the program
interactive by inserting a comment line. These are known as
multiline comments. Single line comments are represented with
the help of 2 forward slashes ―//——‖.
5. printf(“Hello World”) –The printf() command is included in the C stdio.h library, which
helps to display the message on the output screen.
EXERCISE
Short Answer Type Questions.
𝑫 𝑫
WAP in C to find whether a number is Armstrong number or not.
*************
CHAPTER –7: ADVANCED FEATURES OF C
Functions and Passing Parameters to the Function (Call by Value and
Call by Reference)
Functions
A function is a group of statements that together perform a task. Every C program has at
least one function, which is main (), and all the most trivial programs can define additional
functions.
You can divide up your code into separate functions. How you divide up your code among
different functions is up to you, but logically the division is such that each function performs
a specific task.
A function declaration tells the compiler about a function's name, return type, and
parameters. A function definition provides the actual body of the function.
A function can also be referred as a method or a sub-routine or a procedure, etc.
Defining a Function
The general form of a function definition in C programming language is as follows −
o return type function name(parameter list ) {
o body of the function
o }
A function definition in C programming consists of a function header and a function body.
Here are all the parts of a function −
o Return Type − A function may return a value. The return type is the data type of the
value the function returns. Some functions perform the desired operations without
returning a value. In this case, the return type is the keyword void.
o Function Name − This is the actual name of the function. The function name and
the parameter list together constitute the function signature.
o Parameters − A parameter is like a placeholder. When a function is invoked, you
pass a value to the parameter. This value is referred to as actual parameter or
argument. The parameter list refers to the type, order, and number of the parameters
of a function. Parameters are optional; that is, a function may contain no parameters.
o Function Body − The function body contains a collection of statements that define
what the function does.
Parameters in C functions
A Parameter is the symbolic name for "data" that goes into a function. There are two
ways to pass parameters in C: Pass by Value, Pass by Reference.
Call by Value
o Pass by Value, means that a copy of the data is made and stored by way of the
name of the parameter. Any changes to the parameter have NO effect on data in
the calling function.
o In call by value method, the value of the actual parameters is copied into the formal
parameters. In other words, we can say that the value of the variable is used in the
function call in the call by value method.
o In call by value method, we cannot modify the value of the actual parameter by the
formal parameter.
o In call by value, different memory is allocated for actual and formal parameters
since the value of the actual parameter is copied into the formal parameter.
o The actual parameter is the argument which is used in the function call whereas
formal parameter is the argument which is used in the function definition.
Call by Reference
o A reference parameter "refers" to the original data in the calling function. Thus, any
changes made to the parameter are also made to the original variable.
o In call by reference, the address of the variable is passed into the function call as
the actual parameter.
o The value of the actual parameters can be modified by changing the formal
parameters since the address of the actual parameters is passed.
o In call by reference, the memory allocation is similar for both formal parameters and
actual parameters. All the operations in the function are performed on the value
stored at the address of the actual parameters, and the modified value gets stored
at the same address.
There are two ways to make a pass by reference parameter:
ARRAYS
o Arrays are always pass by reference in C. Any change made to the parameter
containing the array will change the value of the original array.
The ampersand (&) used in the function prototype. Function (& parameter name)
o To make a normal parameter into a pass by reference parameter, we use the "&
param" notation. The ampersand (&) is the syntax to tell C that any changes made
to the parameter also modify the original variable containing the data.
Call by Value Example: Swapping the values of the two variables (Swapping not Possible)
#include <stdio.h>
void swap(int , int); //prototype of the function
int main()
{
int a = 10;
int b = 20;
printf("Before swapping the values in main a = %d, b = %d\n",a,b);
swap(a,b);
printf("After swapping values in main a = %d, b = %d\n",a,b);
// The value of actual parameters do not change by changing the formal parameters in
call by value, a = 10, b = 20
}
Output
Before swapping the values in main a = 10, b = 20
After swapping values in function a = 20, b = 10
After swapping values in main a = 10, b = 20
#include <stdio.h>
void swap(int *, int *); //prototype of the function
int main()
{
int a = 10;
int b = 20;
printf("Before swapping the values in main a = %d, b = %d\n",a,b); // printing the value
of a and b in main
swap(&a,&b);
printf("After swapping values in main a = %d, b = %d\n",a,b); // The values of actual
parameters do change in call by reference, a = 10, b = 20
}
void swap (int *a, int *b)
{
int temp;
temp = *a;
*a=*b;
*b=temp;
printf("After swapping values in function a = %d, b = %d\n",*a,*b); // Formal parameters,
a = 20, b = 10
}
Output:
Before swapping the values in main a = 10, b = 20
After swapping values in function a = 20, b = 10
After swapping values in main a = 20, b = 10
Scope of Variables and Storage Classes, Recursion, Function and
Types of Recursion
Scope of variables
When we declare a variable in a program, it cannot be accessed against the scope rules.
Variables can be accessed based on their scope. The scope of a variable decides the
portion of a program in which the variable can be accessed. The scope of the variable is
defined as follows...
Scope of a variable is the portion of the program where a defined variable can be accessed.
The variable scope defines the visibility of variable in the program. Scope of a variable
depends on the position of variable declaration.
In C programming language, a variable can be declared in three different positions and
they are as follows...
o Before the function definition (Global Declaration)
o Inside the function or block (Local Declaration)
o In the function definition parameters (Formal Parameters)
Before the function definition (Global Declaration)
Example Program
#include<stdio.h>
#include<conio.h>
int num1, num2 ;
void main()
{
void addition() ;
void subtraction() ;
void multiplication() ;
clrscr() ;
num1 = 10 ;
num2 = 20 ;
printf("num1 = %d, num2 = %d", num1, num2) ;
addition() ;
subtraction() ;
multiplication() ;
getch() ;
}
void addition()
{
int result ;
result = num1 + num2 ;
printf("\naddition = %d", result) ;
}
void subtraction()
{
int result ;
result = num1 - num2 ;
printf("\nsubtraction = %d", result) ;
}
void multiplication()
{
int result ;
result = num1 * num2 ;
printf("\nmultiplication = %d", result) ;
}
Output:
Inside the function or block (Local Declaration)
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
void addition() ;
int num1, num2 ;
clrscr() ;
num1 = 10 ;
num2 = 20 ;
printf("num1 = %d, num2 = %d", num1, num2) ;
addition() ;
getch() ;
}
void addition()
{
int sumResult ;
sumResult = num1 + num2 ;
printf("\naddition = %d", sumResult) ;
}
Output:
In the function definition parameters (Formal Parameters)
Example Program
#include<stdio.h>
#include<conio.h>
void main()
{
void addition(int, int) ;
int num1, num2 ;
clrscr() ;
num1 = 10 ;
num2 = 20 ;
addition(num1, num2) ;
getch() ;
}
void addition(int a, int b)
{
int sumResult ;
sumResult = a + b ;
printf("\naddition = %d", sumResult) ;
}
Storage Classes
Storage classes in C are used to determine the lifetime, visibility, memory location, and
initial value of a variable. There are four types of storage classes in C
o Automatic
o External
o Static
o Register
Automatic
Automatic variables are allocated memory automatically at runtime.
The visibility of the automatic variables is limited to the block in which they are defined.
The scope of the automatic variables is limited to the block in which they are defined.
The automatic variables are initialized to garbage by default.
The memory assigned to automatic variables gets freed upon exiting from the block.
The keyword used for defining automatic variables is auto.
Every local variable is automatic in C by default.
Example
#include <stdio.h>
int main()
{
int a; //auto
char b;
float c;
printf("%d %c %f",a,b,c); // printing initial default value of automatic variables a, b, and c.
return 0;
}
Output:
garbage garbagegarbage
Static
The variables defined as static specifier can hold their value between the multiple
function calls.
Static local variables are visible only to the function or the block in which they are
defined.
A same static variable can be declared many times but can be assigned at only one time.
Default initial value of the static integral variable is 0 otherwise null.
The visibility of the static global variable is limited to the file in which it has declared.
The keyword used to define static variable is static.
Example
#include<stdio.h>
static char c;
static int i;
static float f;
static char s[100];
void main ()
{
printf("%d %d %f %s",c,i,f); // the initial default value of c, i, and f will be printed.
}
Output:
0 0 0.000000 (null)
Register
The variables defined as the register is allocated the memory into the CPU registers
depending upon the size of the memory remaining in the CPU.
We cannot dereference the register variables, i.e., we cannot use &operator for the
register variable.
The access time of the register variables is faster than the automatic variables.
The initial default value of the register local variables is 0.
The register keyword is used for the variable which should be stored in the CPU register.
However, it is compiler‘s choice whether or not; the variables can be stored in the
register.
We can store pointers into the register, i.e., a register can store the address of a variable.
Static variables cannot be stored into the register since we cannot use more than one
storage specifier for the same variable.
Example
#include <stdio.h>
int main()
{
register int a; // variable a is allocated memory in the CPU register. The initial default
value of a is 0.
printf("%d",a);
}
Output:
0
External
The external storage class is used to tell the compiler that the variable defined as extern
is declared with an external linkage elsewhere in the program.
The variables declared as extern are not allocated any memory. It is only declaration and
intended to specify that the variable is declared elsewhere in the program.
The default initial value of external integral type is 0 otherwise null.
We can only initialize the extern variable globally, i.e., we can not initialize the external
variable within any block or method.
An external variable can be declared many times but can be initialized at only once.
If a variable is declared as external then the compiler searches for that variable to be
initialized somewhere in the program which may be extern or static. If it is not, then the
compiler will show an error.
Example
#include <stdio.h>
int main()
{
extern int a;
printf("%d",a);
}
Output
main.c:(.text+0x6): undefined reference to `a'
collect2: error: ld returned 1 exit status
Recursion Function
Recursion is the process of repeating items in a self-similar way. In programming
languages, if a program allows you to call a function inside the same function, then it is
called a recursive call of the function.
void recursion()
{
recursion (); /* function calls itself */
}
int main() {
recursion ();
}
The C programming language supports recursion, i.e., a function to call itself. But while
using recursion, programmers need to be careful to define an exit condition from the
function, otherwise it will go into an infinite loop.
Recursive functions are very useful to solve many mathematical problems, such as
calculating the factorial of a number, generating Fibonacci series, etc.
Types of Recursion
Recursion are mainly of two types depending on weather a function calls itself from
within itself weather two function call one another mutually.
Thus, the two types of recursion are:
Direct recursion
Indirect recursion
Recursion may be further categorized as:
Linear recursion
Binary recursion
Multiple recursion
Thus, every element in the array a is identified by an element name of the form a[i ][ j ],
where 'a' is the name of the array, and 'i' and 'j' are the subscripts that uniquely identify
each element in 'a'.
String operations
Strings are actually one-dimensional array of characters terminated by a null character '\0'.
Thus a null-terminated string contains the characters that comprise the string followed by
a null.
The following declaration and initialization create a string consisting of the word "Hello". To
hold the null character at the end of the array, the size of the character array containing
the string is one more than the number of characters in the word "Hello."
char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
If you follow the rule of array initialization then you can write the above statement as follows
−
char greeting[] = "Hello";
Following is the memory presentation of the above defined string in C/C++ −
Actually, you do not place the null character at the end of a string constant. The C compiler
automatically places the '\0' at the end of the string when it initializes the array.
Let us try to print the above mentioned string − Live Demo
#include <stdio.h>
int main ()
{
char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
printf("Greeting message: %s\n", greeting );
return 0;
}
Pointers
A pointer is a variable whose value is the address of another variable, i.e., direct address
of the memory location. Like any variable or constant, you must declare a pointer before
using it to store any variable address. The general form of a pointer variable declaration is
−
type *var-name;
Here, type is the pointer's base type; it must be a valid C data type and var-name is the
name of the pointer variable. The asterisk * used to declare a pointer is the same asterisk
used for multiplication.
To understand pointer arithmetic, let us consider that ptr is an integer pointer which points
to the address 1000. Assuming 32-bit integers, let us perform the following arithmetic operation
on the pointer −ptr++
After the above operation, the ptr will point to the location 1004 because each time ptr is
incremented, it will point to the next integer location which is 4 bytes next to the current location.
This operation will move the pointer to the next memory location without impacting the actual
value at the memory location. If ptr points to a character whose address is 1000, then the above
operation will point to the location 1001 because the next character will be available at 1001.
Incrementing a Pointer
We prefer using a pointer in our program instead of an array because the variable pointer
can be incremented, unlike the array name which cannot be incremented because it is a constant
pointer. The following program increments the variable pointer to access each succeeding
element of the array −
#include <stdio.h>
const int MAX = 3;
void main ()
{
int var[] = {10, 100, 200};
int i, *ptr;
ptr = var; /* let us have array address in pointer */
for ( i = 0; i< MAX; i++)
{
printf("Address of var[%d] = %x\n", i, ptr );
printf("Value of var[%d] = %d\n", i, *ptr );
ptr++; /* move to the next location */
}
}
Output
Decrementing a Pointer
The same considerations apply to decrementing a pointer, which decreases its value by
the number of bytes of its data type as shown below −
#include <stdio.h>
const int MAX = 3;
int main ()
{
Output
Address of var[2] = bfedbcd8
Value of var[2] = 200
Address of var[1] = bfedbcd4
Value of var[1] = 100
Address of var[0] = bfedbcd0
Value of var[0] = 10
Pointer Comparisons
Pointers may be compared by using relational operators, such as ==, <, and >. If p1 and
p2 point to variables that are related to each other, such as elements of the same array, then p1
and p2 can be meaningfully compared.
The following program modifies the previous example − one by incrementing the variable
pointer so long as the address to which it points is either less than or equal to the address of the
last element of the array, which is &var[MAX - 1] −
Example
#include <stdio.h>
const int MAX = 3;
int main ()
{
int var[] = {10, 100, 200};
int i, *ptr;
/* let us have address of the first element in pointer */
ptr = var;
i = 0;
while ( ptr<= &var[MAX - 1] )
{
printf("Address of var[%d] = %x\n", i, ptr );
printf("Value of var[%d] = %d\n", i, *ptr );
/* point to the next location */
ptr++;
i++;
}
return 0;
}
Output
Address of var[0] = bfdbcb20
Value of var[0] = 10
Address of var[1] = bfdbcb24
What is a structure?
A structure is a user defined data type in C. A structure creates a data type that can be
used to group items of possibly different types into a single type.
How to create a structure?
char street[100];
char city[50];
char state[20];
int pin;
};
How to declare structure variables?
A structure variable can either be declared with structure declaration or as a separate
declaration like basic types.
A variable declaration with structure declaration.
struct Point
{
int x, y;
} p1;
The variable p1 is declared with 'Point'.
A variable declaration like basic data types
struct Point
{
int x, y;
};
int main()
{
struct Point p1; // The variable p1 is declared like a normal variable
}
Union
A union is a special data type available in C that allows storing different data types in the
same memory location.
You can define a union with many members, but only one member can contain a value at
any given time.
Unions provide an efficient way of using the same memory location for multiple purposes.
Defining a Union:
To define a union, you must use the union statement in the same way as you did while
defining a structure.
The union statement defines a new data type with more than one member for your
program.
The format of the union statement is as follows:
union [union name]
{
member definition;
member definition;
...
member definition;
};
#include <stdio.h>
int main()
{
int avg = 0;
int sum =0;
int x=0;
int num[4];/* Array- declaration – length 4*/
for (x=0; x<4;x++)/* We are using for loop to traverse through the */
{
printf("Enter number %d \n", (x+1));
scanf("%d", &num[x]);
}
for (x=0; x<4;x++)
{
sum = sum+num[x];
}
avg = sum/4;
printf("Average of entered number is: %d", avg);
return 0;
}
Output:
Enter number 1
10
Enter number 2
10
Enter number 3
20
Enter number 4
40
Average of entered number is: 20
Example to print the address of array elements
#include <stdio.h>
int main( )
{
int val[7] = { 11, 22, 33, 44, 55, 66, 77 } ;
/* for loop to print value and address of each element of array*/
for ( inti = 0 ; i< 7 ; i++ )
{
printf("val[%d]: value is %d and address is %d\n", i, val[i], &val[i]);
}
return 0;
}
Output:
val[0]: value is 11 and address is 1423453232
val[1]: value is 22 and address is 1423453236
val[2]: value is 33 and address is 1423453240
val[3]: value is 44 and address is 1423453244
val[4]: value is 55 and address is 1423453248
val[5]: value is 66 and address is 1423453252
val[6]: value is 77 and address is 1423453256
#include <stdio.h>
void salaryhike(int *var, int b)
{
*var = *var+b;
}
int main()
{
int salary=0, bonus=0;
printf("Enter the employee current salary:");
scanf("%d", &salary);
printf("Enter bonus:");
scanf("%d", &bonus);
salaryhike(&salary, bonus);
printf("Final salary: %d", salary);
return 0;
}
Output:
#include <stdio.h>
void swapnum(int *num1, int *num2)
{
int tempnum;
tempnum = *num1;
*num1 = *num2;
*num2 = tempnum;
}
int main( )
{
int v1 = 11, v2 = 77 ;
printf("Before swapping:");
printf("\nValue of v1 is: %d", v1);
printf("\nValue of v2 is: %d", v2);
/*calling swap function*/
swapnum( &v1, &v2 );
printf("\nAfter swapping:");
printf("\nValue of v1 is: %d", v1);
printf("\nValue of v2 is: %d", v2);
}
Output:
Before swapping:
Value of v1 is: 11
Value of v2 is: 77
After swapping:
Value of v1 is: 77
Value of v2 is: 11
#include <stdio.h>
int main()
{
double arr[] = {11, 22, 33, 44, 55, 66};
int n;
/* Calculating the size of the array with this formula.
* n = sizeof(array_name) / sizeof(array_name[0])
* This is a universal formula to find number of elements in
* an array, which means it will work for arrays of all data
* types such as int, char, float etc.
*/
n = sizeof(arr) / sizeof(arr[0]);
printf("Size of the array is: %d\n", n);
return 0;
}
Output:
Size of the array is: 6
Output
Enter the number of rows (between 1 and 100): 2
Enter the number of columns (between 1 and 100): 3
Enter elements of 1st matrix:
Enter element a11: 2
Enter element a12: 3
Enter element a13: 4
Enter element a21: 5
Enter element a22: 2
Enter element a23: 3
Enter elements of 2nd matrix:
Enter element a11: -4
Enter element a12: 5
Enter element a13: 3
Enter element a21: 5
Enter element a22: 6
Enter element a23: 3
Sum of two matrices:
-2 8 7
10 8 6
int main()
{
Enter elements:
Enter a11: 2
Enter a12: -3
Enter a13: 4
Enter a21: 53
Enter a22: 3
Enter a23: 5
Enter elements:
Enter a11: 3
Enter a12: 3
Enter a21: 5
Enter a22: 0
Enter a31: -3
Enter a32: 4
Output Matrix:
-21 22
159 179
#include <stdio.h>
int main()
{
int a[10][10], transpose[10][10], r, c, i, j;
printf("Enter rows and columns: ");
scanf("%d %d", &r, &c);
// Assigning elements to the matrix
printf("\nEnter matrix elements:\n");
for (i = 0; i< r; ++i)
for (j = 0; j < c; ++j)
{
printf("Enter element a%d%d: ", i + 1, j + 1);
scanf("%d", &a[i][j]);
}
Output
Enter rows and columns: 2
3
Enter matrix elements:
Enter element a11: 1
Enter element a12: 4
Enter element a13: 0
Enter element a21: -5
Enter element a22: 2
Enter element a23: 7
Entered matrix:
14 0
-5 2 7
Output
Enter a, b and c respectively: 1
2
3
Value before swapping:
a=1
b=2
c=3
Value after swapping:
a=3
b=1
c=2
Solved Questions
Ans:-
Arrays a kind of data structure that can store a fixed-size sequential collection of elements
of the same type. An array is used to store a collection of data, but it is often more useful to think
of an array as a collection of variables of the same type.
Ans:-
strcat - concatenate two strings. strchr -string scanning operation. strcmp - compare two
strings. strcpy -copy a string.
int main()
{
int a[30], i, num, smallest;
printf("\nEnter no of elements :");
scanf("%d", &num);
//Read n elements in an array
for (i = 0; i< num; i++)
scanf("%d", &a[i]);
//Consider first element as smallest
smallest = a[0];
for (i = 0; i< num; i++)
{
if (a[i] < smallest)
{
smallest = a[i];
}
}
// Print out the Result
printf("\nSmallest Element : %d", smallest);
return (0);
}
Output:
Enter no of elements : 5
11 44 22 55 99
Smallest Element : 11
EXERCISE
Short Answer Type Questions.
CHAPTER-1: MCQ
The “0” and “1” in the binary numbering system are called Binary digits or known as:
a) Bytes
b) Kilobytes
c) Bits
d) Kilobits
Ans: c) Bits
Ans: d) 4th
Ans: b) 2nd
Ans: c) CPU
CD-ROM is a:
a) Semiconductor memory
b) Memory register
c) Magnetic memory
d) None of above
A hybrid computer:
a) Resembles digital computer
b) Resembles analogue computer
c) Resembles both a digital and analogue computer
d) None of the above
Ans: b) ABC
What does part number, part description and number of parts ordered belong to?
a) Output
b) Input
c) Feedback
d) Control
Ans: b) Input
a) Calculations
b) Processing the data
c) Both 1 and 2
d) Neither 1 nor 2
A bit is the measuring unit of the width of a processor's data path. Commonly used
data path is of:
a) 24 bits
b) 32 bits
c) bits
d) 16 bits
Ans: c) 8 bits
Which language is the set of rules that tells the computer what operation to perform?
a) Programming language
b) Command language
c) Procedural language
d) Structures
Which one of the following statement is true for the machine language ?
a) Machine language
b) Low level language
c) High level language
d) All of the above
a) spam
b) spoof
c) sniffer script
d) spool
Ans: a) spam
Office LANS, which are scattered geographically on large scale, can be connected
by the use of corporate:
a) CAN
b) DAN
c) LAN
d) WAN
Ans: d) WAN
The device used to carry digital data on analogue lines is called as:
a) Modem
b) Multiplexer
c) Modulator
d) Demodulator
Ans: a) Modem
a) Badware
b) Malware
c) Maliciousware
d) Illegalware
Ans: b) Malware
a) Worm
b) Trojan horse
c) Virus
d) Macro virus
Ans: b) Trojan horse
What is the name of an application program that gathers user information and sends
it to someone through the Internet ?
a) A virus
b) Spybot
c) Logic bomb
d) Security patch
Ans: b) Spybot
a) LAN
b) WAN
c) MAN
d) BUS
Ans: d) BUS
a) Mosaic
b) Netscape
c) Internet explorer
d) Collabra
Ans: a) Mosaic
Which one of following are set of rules and procedures to control the data
transmission over the internet:
a) IP address
b) Domains
c) Protocol
d) Gateway
Ans: c) Protocol
CHAPTER-4 : MCQ
Q.1 Which one of following is collection of related fields that can be treated as a unit
by some application program:
a) field
b) record
c) file
d) database
Ans: b) record
After creating a file management system on your computer, you should do all of
the following EXCEPT:
a) delete files that are no longer needed
b) move files to appropriate folders
c) rename folders to be more meaningful
d) run the Task Management
Ans: a) delete files that are no longer needed
When you right-click on a folder on the hard drive and choose Delete, the files:
a) are erased
b) go into the Recycle Bin
c) are moved into the header section of the hard drive
d) go into the Old Documents folder
Ans: b) Variables
A symbol used for grouping.
a) ()
b) {}
c) []
d) ―‖
Ans: a) ()
A statement used to close the IF block.
a) ELSE
b) ELSEIF
c) END
d) ENDIF
Ans: d) ENDIF
In structural language, we can't add a new sort of
a) Loop
b) Function
c) Variable
d) Constant
Ans: a) Loop
CHAPTER-6 : MCQ
return 0;
}
a) Hurray..Yes
b) Hurray..
Yes
c) Compiler error
d) None of the above
Ans: c) Compiler error
Operator % in C Language is called?
a) Percentage Operator
b) Quotient Operator
c) Modulus
d) Division
Ans: c) Modulus
Can you use C Modulo Division operator % with float and int?
a) Only int variables = Okay
b) Only float variables = Okay
c) int or float combination = Okay
d) Numerator int variable, Denominator any variable = Okay
Ans: a) Only int variables = Okay
Which loop is faster in C Language, for, while or Do While?
a) for
b) while
c) do while
d) All work at same speed
Ans: d) All work at same speed
What is the output of C program with switch statement or block?
int main()
{
int a;
switch(a);
{
printf("DEER ");
}
printf("LION");
}
a) LION
b) DEER LION
c) Compiler error
d) None of the above
Ans: b) DEER LION
CHAPTER-7 : MCQ