Itcp Lab Manual

Download as pdf or txt
Download as pdf or txt
You are on page 1of 222

Contents

Lab # 01 .......................................................................................................................................... 6
Basic Computer Hardware, Networking terminologies and Network Devices .............................. 6
1.1 Objective: .............................................................................................................................. 6
1.2 Scope: .................................................................................................................................... 6
1.3 Useful Concepts: ................................................................................................................... 7
1.4 Exercises for lab .................................................................................................................. 10
1.5 Home Work ......................................................................................................................... 10
Lab # 02 ........................................................................................................................................ 11
Microsoft Word Document ........................................................................................................... 11
2.1 Objective ............................................................................................................................. 11
2.2 Scope ................................................................................................................................... 11
2.3 Useful Concepts .................................................................................................................. 11
Create a Document ................................................................................................................ 11
Saving Documents ................................................................................................................ 14
Formatting Text .................................................................................................................... 15
Header Footer and Page Number .......................................................................................... 17
Pictures and Text Wrap ......................................................................................................... 20
Tables .................................................................................................................................... 24
2.4 Exercises for Lab ................................................................................................................ 29
2.5 Home Work ......................................................................................................................... 29
Lab # 02(continued) ...................................................................................................................... 31
Microsoft PowerPoint Document ................................................................................................. 31
2.1 Objective ............................................................................................................................. 31
2.2 Scope ................................................................................................................................... 31
2.3 Useful Concepts .................................................................................................................. 31
Introduction to PowerPoint Presentation .............................................................................. 31
Create a Presentation............................................................................................................. 31
Saving presentation ............................................................................................................... 32
Slides and Layout .................................................................................................................. 33

Introduction to Computers and Programming Lab Manual – Page 1|222


Applying Themes .................................................................................................................. 36
Applying Transitions ............................................................................................................ 36
Applying Animation ............................................................................................................. 39
Smart Art Graphics ............................................................................................................... 42
2.3Exercise for Lab ................................................................................................................... 44
2.4 Home Work ......................................................................................................................... 45
Lab # 02(continued) ...................................................................................................................... 46
Microsoft Excel Document ........................................................................................................... 46
2.1 Objective ............................................................................................................................. 46
2.2 Scope ................................................................................................................................... 46
2.3 Useful Concepts .................................................................................................................. 46
Introduction to Excel Sheet ................................................................................................... 46
Creating Workbook ............................................................................................................... 49
Sheet Basic ............................................................................................................................ 49
Cell Formatting ..................................................................................................................... 51
Conditional Formatting ......................................................................................................... 52
Simple Formulas ................................................................................................................... 54
Freezing Pane ........................................................................................................................ 55
Charts .................................................................................................................................... 56
2.4 Exercises for Lab ................................................................................................................ 57
2.5 Home Work ......................................................................................................................... 58
Lab # 03 ........................................................................................................................................ 59
How to install Dev C++ Compiler, Edit, compile and Run a C++ Program. ............................... 59
3.1 Objective: ............................................................................................................................ 59
3.2 Scope: .................................................................................................................................. 59
3.3 Useful Concepts: ................................................................................................................. 59
3.4 Exercises for lab .................................................................................................................. 68
3.5 Home Work ......................................................................................................................... 68
Lab # 04 ........................................................................................................................................ 69
Single Line Comment, Multi line Comment, printf and scanf Statements ................................... 69
4.1 Objective: ............................................................................................................................ 69
Introduction to Computers and Programming Lab Manual – Page 2|222
4.2 Scope: .................................................................................................................................. 69
4.3 Useful Concept.................................................................................................................... 69
4.4 Examples ............................................................................................................................. 70
4.5 Home Work:........................................................................................................................ 76
Lab # 05 ........................................................................................................................................ 77
Data Types .................................................................................................................................... 77
5.1 Objective: ............................................................................................................................ 77
5.2 Scope: .................................................................................................................................. 77
5.3 Useful Concept: .................................................................................................................. 77
5.4 Examples:............................................................................................................................ 78
5.5 Exercises for lab .................................................................................................................. 83
5.6 Home Work ......................................................................................................................... 83
Lab# 06 ......................................................................................................................................... 84
Arithmetic Operators, Arithmetic Expressions and math functions ............................................. 84
6.1 Objective ............................................................................................................................. 84
6.2 Scope ................................................................................................................................... 84
6.3 Useful Concepts .................................................................................................................. 84
6.4 Examples:............................................................................................................................ 85
6.5 Exercise for Lab .................................................................................................................. 90
6.6 Home Task .......................................................................................................................... 90
Lab# 07 ......................................................................................................................................... 91
Decision Control Structure ........................................................................................................... 91
7.1 Objective ............................................................................................................................. 91
7.2 Scope ................................................................................................................................... 91
7.3 Useful concept .................................................................................................................... 91
7.4 Examples ............................................................................................................................. 91
7.5 Exercise for Lab ................................................................................................................ 101
7.6 Home Task ........................................................................................................................ 101
Lab # 08 ...................................................................................................................................... 102
LOOPS ........................................................................................................................................ 102
8.1 Objective: .......................................................................................................................... 102
Introduction to Computers and Programming Lab Manual – Page 3|222
8.2 Scope: ................................................................................................................................ 102
8.3 Useful Concepts: ............................................................................................................... 102
8.4 Examples ........................................................................................................................... 105
8.5 Exercises for lab ................................................................................................................ 111
8.6 Home Work ....................................................................................................................... 111
Lab # 09 ...................................................................................................................................... 112
Arrays .......................................................................................................................................... 112
9.1 Objective: .......................................................................................................................... 112
9.2 Scope: ................................................................................................................................ 112
9.3 Useful Concepts: ............................................................................................................... 112
9.4 Examples ........................................................................................................................... 115
9.5 Exercises for lab ................................................................................................................ 125
9.6 Home Work ....................................................................................................................... 125
Lab # 10 ...................................................................................................................................... 126
2-D Arrays .................................................................................................................................. 126
10.1 Objective: ........................................................................................................................ 126
10.2 Scope: .............................................................................................................................. 126
10.3 Useful Concepts: ............................................................................................................. 126
10.4 Examples ......................................................................................................................... 129
10.5 Exercises for lab .............................................................................................................. 135
10.6 Home Work ..................................................................................................................... 135
Lab # 11 ...................................................................................................................................... 136
Structures in C............................................................................................................................. 136
11.1 Objective: ........................................................................................................................ 136
11.2 Scope: .............................................................................................................................. 136
11.3 Useful Concept................................................................................................................ 136
11.4 Examples ......................................................................................................................... 141
11.5 Exercises for lab .............................................................................................................. 144
11.6 Home Work ..................................................................................................................... 147
Lab # 12 ...................................................................................................................................... 148
Function and Parameters ............................................................................................................. 148
Introduction to Computers and Programming Lab Manual – Page 4|222
12.1 Objective: ........................................................................................................................ 148
12.2 Scope: .............................................................................................................................. 148
12.3 Useful Concepts: ............................................................................................................. 148
12.4 Examples ......................................................................................................................... 151
12.5 Exercises for lab .............................................................................................................. 162
12.6 Home Work ..................................................................................................................... 162
Lab # 13 ...................................................................................................................................... 163
Recursion in C............................................................................................................................. 163
13.1 Objectives: ...................................................................................................................... 163
13.2 Scope: .............................................................................................................................. 163
13.3 Useful Concepts: ............................................................................................................. 163
13.4 Examples ......................................................................................................................... 165
13.5 Exercises for lab .............................................................................................................. 177
13.6 Home Work ..................................................................................................................... 177
Lab # 14 ...................................................................................................................................... 179
Pointers ....................................................................................................................................... 179
14.1 Objective: ........................................................................................................................ 179
14.2 Scope: .............................................................................................................................. 179
14.3 Useful Concept................................................................................................................ 179
14.4 Examples ......................................................................................................................... 180
14.5 Exercises for lab .............................................................................................................. 184
14.6 Home Work ..................................................................................................................... 184
Lab # 15 ...................................................................................................................................... 185
Strings ......................................................................................................................................... 185
15.1 Objective: ........................................................................................................................ 185
15.2 Scope: .............................................................................................................................. 185
15.3 Useful Concepts: ............................................................................................................. 185
15.4 Examples:........................................................................................................................ 187
15.5 Exercises for lab .............................................................................................................. 192
15.6 Home Work ..................................................................................................................... 192
Lab # 16 ...................................................................................................................................... 194
Introduction to Computers and Programming Lab Manual – Page 5|222
File handling in C........................................................................................................................ 194
16.1 Objective: ........................................................................................................................ 194
16.2 Scope: .............................................................................................................................. 194
16.3 Useful Concepts: ............................................................................................................. 194
Lab # 17 ...................................................................................................................................... 207
Graphics in C .............................................................................................................................. 207
17.1 Objective: ........................................................................................................................ 207
17.2 Scope: .............................................................................................................................. 207
17.3 Useful Concepts .............................................................................................................. 207
17.4 Examples ......................................................................................................................... 221

Lab # 01

Basic Computer Hardware, Networking terminologies and Network


Devices

1.1 Objective:
To computer hardware architecture

To understand the concept of Networking


To assist students in understanding the benefits of networking.

To provide standard networking models

To familiar with network devices.

1.2 Scope:
This document includes information under the following main topics

1. Relationship between different hardware component

2. Introduction to Networking

3. Types of Networks

4. Basic Networking Devices


Introduction to Computers and Programming Lab Manual – Page 6|222
5. Basic Networking terminologies

6. Network Topologies

1.3 Useful Concepts:


Computer Hardware Component
This figure includes the all require components of computer system.

Introduction to Networking

A computer network consists of a collection of computers, printers and other equipment that is
connected together so that they can communicate with each other.
Broadly speaking, there are two types of network configuration, peer-to-peer networks and
client/server networks.

Types of Networks

Introduction to Computers and Programming Lab Manual – Page 7|222


Peer-to-peer Network:

Peer-to-peer networks are more commonly implemented where less than ten computers are involved
and where strict security is not necessary. All computers have the same status, hence the term
'peer', and they communicate with each other on an equal footing. Files, such as word processing or
spreadsheet documents, can be shared across the network and all the computers on the network
can share devices, such as printers or scanners, which are connected to any one computer.

Client/Server Networks:

Client/server networks are more suitable for larger


networks. A central computer, or 'server', acts as the
storage location for files and applications shared on
the network. Usually the server is a higher than
average performance computer. The server also
controls the network access of the other computers
which are referred to as the 'client' computers.
Typically, teachers and students in a school will use the
client computers for their work and only the network
administrator (usually a designated staff member) will
have access rights to the server.

Basic Networking Devices

NIC (Network Interface Card)


A NIC (pronounced 'nick') is also known as a network card.

It connects the computer to the cabling, which in turn links

all of the computers on the network together. Each


computer on a network must have a network card.

Hub or Switch

A hub is a device used to connect a PC to the network. The function of a hub is to direct
information around the network, facilitating communication between all connected devices. However
in new installations switches
should be

Introduction to Computers and Programming Lab Manual – Page 8|222


used instead of hubs as they are more effective and provide better performance. A switch, which is
often, termed a 'smart hub'.

Router

Router. A router is a device used to connect two


different networks. In most cases the two networks it
connects are a LAN and the Internet (via a modem or
other device that receives an Internet signal).
Routers can also direct Internet traffic to various
computers on the LAN. This allows many small
networks to operate without a server.

Server

A server is a running instance of an application (software)


capable

of accepting requests from the client and giving responses


accordingly. Servers can run on any computer including
dedicated computers, which individually are also often referred to
as "the server". A server computer is also used on a network to
share information and direct traffic to other (client) comput- ers.
Many small networks do not need servers.

Basic Network terminologies

The Internet
This is the largest computer network in the world! It is a constantly growing connection of
computers and networks around the world, and is used to communicate and share information in
many ways.

ISP (Internet Server provider)

This is the organization or company that connects an individual computer or a computer network to
the Internet, therefore allowing for communication and collaboration with millions of other
computers and their users.

Firewall

Introduction to Computers and Programming Lab Manual – Page 9|222


A firewall is a tool that is designed to protect a computer or a network from security threats (such
as malware or unauthorized access) from the Internet. A firewall can be a piece of software found
on an individual computer, or a hardware device incorporated into a computer network.
IP Address

An Internet protocol (IP) address is a four part number, written with decimal points (full stops)
separating each part. An example IP address is 192.168.0.200. An IP address is rather like a ‗phone
number‘ for a computer or networking equipment. Computers on the Internet that know each other‘s
IP addresses can communicate with each other.

MAC Address

The Media Access Control (MAC) address is also known as the physical address for any device (such
as a network interface card or a wireless network adapter) that connects a computer to a network.
Every network device has its own unique MAC address that (like a serial number) cannot be changed
and is useful for identifying that device when it is a part of a network.

TCP/IP

TCP/IP is short for Transmission Control Protocol/Internet Protocol. These protocols (or rules) de-
fine how devices (such as computers and routers) communicate with each other. TCP/IP determines
the best path for information (data) to travel from one device to another. TCP/IP will break up
data into small packets that are sent separately and then reassembled upon arrival.

DHCP

The Dynamic Host Configuration Protocol (DHCP) is a set of rules used by a DHCP server (a server
computer, a firewall, a modem or a router) to allocate IP addresses to computers on a local network
or the Internet. It also keeps track of assign and available IP addresses. In most small networks
the router acts as the DHCP server.

1.4 Exercises for lab


Write the names of different topologies used in networking.

Write the Names of 3 different types of servers with figures.

Write the Names of 3 different types of routers with figures.

1.5 Home Work


What is Ipv4 and Ipv6 address? And what is the difference between them.

Introduction to Computers and Programming Lab Manual – Page 10|222


Lab # 02

Microsoft Word Document

2.1 Objective

1. Introduction to Microsoft Office


2. Open new word document or pre-define word document
3. Understanding of basic word functionality
4. Overview of basic tool bars
5. Understand the functionality of Header and footer
6. Save document with default and custom file format
7. Creation of table and its different layout.

2.2 Scope

1. Open new Word Document First time


2. Open Pre-defined MS word document
3. How to change a font of text.
4. How to insert a Table, Pictures and Shapes in Word Document.
5. How to make Header, Footer and Page Border.
6. How a align a Page.
7. How to make Table of content.
8. Save document with different file formats

2.3 Useful Concepts


Create a Document

Word files are called documents. Whenever you start a new project in Word, you'll need to create
a new document, which can either be blank or from a template. You'll also need to know how to open
an existing document.

Creating a new Document

1. Select the File tab. Backstage view will appear

Introduction to Computers and Programming Lab Manual – Page 11|222


2. Select New, then click Blank document

3. A new blank document will appear

To open an existing document:

In addition to creating new documents, you'll often need to open a document that was previously
saved.
1. Navigate to Backstage view, then click Open.

Introduction to Computers and Programming Lab Manual – Page 12|222


2. Select Computer and then click Browse. Alternatively, you can choose One Drive (previously
known as Skydive) to open files stored on your One Drive.

3. The Open dialog box appears. Locate and select your document, then click Open

Open Recently open Document

To open a recent Document rather than searching for a file.

Introduction to Computers and Programming Lab Manual – Page 13|222


Saving Documents

Whenever you create a new document in Word, you'll need to know how to save in order to access
and edit it later. As in previous versions of Word, you can save files to your computer.
Word offers two ways to save a file: Save and Save As. These options work in similar ways, with a
few important differences:
Save: When you create or edit a document, you'll use the Save command to save your changes.
You'll use this command most of the time. When you save a file, you'll only need to choose a file
name and location the first time. After that, you can just click the Save command to save it with
the same name and location.

Save As: You'll use this command to create a copy of a document while keeping the original. When
you use Save As, you'll need to choose a different name and/or location for the copied version.

To save a document:

It's important to save your document whenever you start a new project or make changes to an
existing one. Saving early and often can prevent your work from being lost. You'll also need to pay
close attention to where you save the document so it will be easy to find later.
1. Locate and select the Save command on the Quick Access toolbar.

2. If you're saving the file for the first time, the Save As pane will appear in backstageview.

Introduction to Computers and Programming Lab Manual – Page 14|222


3. You'll then need to choose where to save the file and give it a file name. To save the
document to your computer, select Computer, and then click Browse.

4. The Save As dialog box will appear. Select the location where you wish to save the document.
5. Enter a file name for the document, then click Save.

6. The document will be saved. You can click the Save command again to save your changes as you
modify the document.
Formatting Text

Formatted text can draw the reader's attention to specific parts of a document and emphasize
important information. In Word, you have many options for adjusting the font of your text,
Introduction to Computers and Programming Lab Manual – Page 15|222
including size, colour, and inserting special symbols. You can also adjust the alignment of the text to
change how it is displayed on the page.

To Change the font

By default, the font of each new document is set to Calibri. However, Word provides a variety of
other fonts you can use to customize text and titles.
1. Select the text you wish to modify.

2. On the Home tab, click the drop-down arrow next to the Font box. A menu of font styles will
appear.
3. Move the mouse over the various font styles. A live preview of the font will appear in the
document. Select the font style you wish to use.

4. The font will change in the document.

Introduction to Computers and Programming Lab Manual – Page 16|222


Header Footer and Page Number

The header is a section of the document that appears in the top margin, while the footer is a
section of the document that appears in the bottom margin. Headers and footers generally contain
additional information such as page numbers, dates, an author's name, and footnotes, which can help
keep longer documents organized and make them easier to read. Text entered in the header or
footer will appear on each page of the document.

To Insert Header or Footer

Word has a variety of preset headers and footers you can use to enhance your document's design
and layout. In our example, we'll add a preset header to our document.

1. Select the Insert tab, and then click the Header or Footer command. In our example, we'll
click the Header command.

2. In the menu that appears, select the desired preset header or footer. In our example, we'll
select a header.

Introduction to Computers and Programming Lab Manual – Page 17|222


3. The header or footer will appear. Preset headers and footers contain placeholders for
information such as the title or date, and these are known as Content Control fields.

Introduction to Computers and Programming Lab Manual – Page 18|222


4. To edit a Content Control field, click it and type the desired information.

5. When you're finished, click Close Header and Footer. Alternatively, you can press the Esc key.

Introduction to Computers and Programming Lab Manual – Page 19|222


Pictures and Text Wrap

Adding pictures to your document can be a great way to illustrate important information or add
decorative accents to existing text. Used in moderation, pictures can improve the overall
appearance of your document.

To insert a picture from a file:

If you have a specific image in mind, you can insert a picture from a file. In our example, we'll
insert a picture saved locally on our computer.
1. Place the insertion point where you want the image to appear.

2. Select the Insert tab on the Ribbon, and then click the Pictures command.

3. The Insert Picture dialog box will appear. Select the desired image file, and then click Insert.

Introduction to Computers and Programming Lab Manual – Page 20|222


4. The image will appear in the document

Introduction to Computers and Programming Lab Manual – Page 21|222


To use a predefined text wrapping setting:

Predefined text wrapping allows you to move the image to a specific location on the page.
1. Select the image you want to move. The Format tab will appear on the right side of the Ribbon.

Introduction to Computers and Programming Lab Manual – Page 22|222


2. On the Format tab, click the Position command in the Arrange group.
3. A drop-down menu of predefined image positions will appear. Select the desired image position.
The image will adjust in the document, and the text will wrap around it.

Introduction to Computers and Programming Lab Manual – Page 23|222


Tables

A table is a grid of cells arranged in rows and columns. Tables are useful for various tasks such as
presenting text information and numerical data. In Word, you can create a blank table, convert
text to a table, and apply a variety of styles and formats to existing tables.

To Insert a Blank table

1. Place your insertion point where you want the table to appear, and then select the Insert
tab.
2. Click the Table command.

Introduction to Computers and Programming Lab Manual – Page 24|222


3. A drop-down menu containing a grid of squares will appear. Hover the mouse over the grid to
select the number of columns and rows in the table.

4. Click the mouse, and the table will appear in the document.

Introduction to Computers and Programming Lab Manual – Page 25|222


5. You can now place the insertion point anywhere in the table to add text. You can move a
insertion point to the next cell by pressing Tab key while typing. At cell pressing a Tab key
will create a new row at the end.

To add new row or colunm

Hover the mouse near the location where you wish to add a row or column, you will see a plus sign
that appear, click it and new row will appear.

To delete a row or column

1. Place a insertion a point in the row or column that you want to delete
2. Right Click the mouse button, then select Delete Cells from the menu the appears

Introduction to Computers and Programming Lab Manual – Page 26|222


To Apply Table Style

1. Click anywhere on the table, then click the Design tab on the right side of the Ribbon.

Introduction to Computers and Programming Lab Manual – Page 27|222


2. Locate the Table Styles group, and then click the more drop-down arrow to see all available
table styles.
3. Select the desired style.

4. The selected table style will appear.

Introduction to Computers and Programming Lab Manual – Page 28|222


2.4 Exercises for Lab

Formatting Text
1. Open an existing Word 2013 document.
2. Change the font style of some text.
3. Change the font size of some text. Change the font colour of some text.
4. Highlight some text.
5. Try bolding, italicizing, or underlining some text.
6. Change the case of some text.
7. Centre aligns some text.

Header Footer and Page number


1. Create a new Word document
2. Create a blank header.
3. Add a name to the header.
4. Try inserting a pre-set header or footer.
5. Add today's date to the header.

2.5 Home Work

Pictures and Text Wrap


1. Create a new Word document
2. Insert a picture from a file into the document.
3. Resize the picture.
4. Change the text wrapping setting of one of the images
5. Try moving an image to a new location.

Tables

Introduction to Computers and Programming Lab Manual – Page 29|222


1. Open an existing Word 2013 document.
2. Convert some text into a table.
3. Apply a table style, and experiment with the Table Style Options.
4. Insert a column into the table.
5. Delete a row from the table.
6. Insert a blank table with six rows and two columns.
7. Add borders to the blank table.

Introduction to Computers and Programming Lab Manual – Page 30|222


Lab # 02(continued)

Microsoft PowerPoint Document

2.1 Objective
To familiarize the students with the importance of MS PowerPoint, creating the presentation from
scratch and learning different basic features of the PowerPoint presentation. Gives overview about
the different tool bars and explains how to apply new themes, transitions, animations and smart art.
2.2 Scope
The student should know the following at the end of this lab:
1. Create presentation from scratch.
2. Saving your presentation.
3. Add new slides and changing its layout.
4. Adding new themes
5. Adding transition to slides
6. Adding animation to slides
7. Add smart Art Graphics
2.3 Useful Concepts
Introduction to PowerPoint Presentation

PowerPoint files are called presentations. Whenever you start a new project in PowerPoint, you'll
need to create a new presentation, which can either be blank or from a template.
Create a Presentation
1. Select the File tab to go to backstage view.

2. Select New on the left side of the window, then click Blank Presentation or choose a
theme.

Introduction to Computers and Programming Lab Manual – Page 31|222


3. A new presentation will appear.
Saving presentation

Whenever you create a new presentation in PowerPoint, you'll need to know how to save in order to
access and edit it later.
1. Locate and select the Save command on the Quick Access Toolbar.

2. If you're saving the file for the first time, the Save As pane will appear in backstage view.
3. You'll then need to choose where to save the file and give it a file name. To save the
presentation to your computer, select Computer, and then click Browse.

Introduction to Computers and Programming Lab Manual – Page 32|222


4. The Save As dialog box will appear. Select the location where you wish to save the
presentation.
5. Enter a file name for the presentation, then click Save.

6. The presentation will be saved. You can click the Save command again to save your changes
as you modify the presentation.

Slides and Layout

Slides contain the information you will present to your audience. This might include text, pictures,
charts, and more. Before you start creating presentations, you'll need to know the basics of
working with slides and slide layouts.
When you insert a new slide, it will usually have placeholders. Placeholders can contain different
types of content, including text and images. Some placeholders have placeholder text, which you can

Introduction to Computers and Programming Lab Manual – Page 33|222


replace with your own text. Others have thumbnail icons that allow you to insert pictures, charts,
and videos.

Slides have several different layouts for placeholders, depending on the kind of information you
want to include. Whenever you create a new slide, you'll need to choose a slide layout that fits your
content.

Introduction to Computers and Programming Lab Manual – Page 34|222


Insert a new Slide

Whenever you start a new presentation, it will contain one slide with the Title Slide layout. You can
insert as many slides as you need from a variety of layouts.
1. From the Home tab, click the bottom half of the New Slide command.

2. Choose the desired slide layout from the menu that appears.

3. The new slide will appear. Click any placeholder and begin typing to add text. You can also
click an icon to add other types of content, like a picture or a chart.

Introduction to Computers and Programming Lab Manual – Page 35|222


Applying Themes

A theme is a predefined combination of colours, fonts, and effects. Different themes also use
different slide layouts. You've already been using a theme, even if you didn't know it: the default
Office theme. You can choose from a variety of new themes at any time, giving your entire
presentation a consistent, professional look.

Theme elements

 Theme Colours
 Themes Fonts
 Theme effects

Themes and Slides Layout

As you can see from the two different Title Slides above, themes can also change various slide
layouts. Some themes, like the Wisp theme in the example below, even include additional layouts.

Applying Transitions

A transition can be as simple as fading to the next slide, or it can be a flashy, eye-catching effect.
PowerPoint makes it easy to apply transitions to some or all of your slides, giving your presentation a
polished, professional look.

To apply a Transition
Introduction to Computers and Programming Lab Manual – Page 36|222
1. Select the desire slide from the Slide Navigation pane. This is the slide that will appear
after the transition.

Introduction to Computers and Programming Lab Manual – Page 37|222


2. Click the Transition tab, locate the Transition to this slide group.
3. Click the more drop-down arrow for all transition.

4. Click the Transition to apply it. This will automatic preview the transition.

Introduction to Computers and Programming Lab Manual – Page 38|222


Extra

You can also apply to all command to apply the transition to all group .

Applying Animation

You can animate different element in PowerPoint such as picture, shapes and text etc.

Four Types of Animation

1. Entrance: It will control how text entered the Slide Area.


2. Emphasis: It will used to attract the audience‘s attention. To specific content.
3. Exit: It will control how text entered the Slide Area.
4. Motion Paths: It is also used for emphasis or movement of element of element in text.
Introduction to Computers and Programming Lab Manual – Page 39|222
Apply Animation to Object
1. Select object to animate
2. On Animation Tab, Click more drop-down arrow.

3. Select the desire animation effect. The effect will apply to the element.

Introduction to Computers and Programming Lab Manual – Page 40|222


4. The number against the element shows that it has an animation. The star symbol will appear
next to the slide in slide pane.

Extra

Some of the effects have options, which can be changed using effect options in Animation group.
Introduction to Computers and Programming Lab Manual – Page 41|222
Smart Art Graphics

Smart Art allow you to display information using graphics.

Insert Smart Art Graphics

1. Select slide where you want to appear a Smart Art


2. From Insert Tab, select Smart Art. The dialog box will appear

3. Selecta Category and choose a graphics and click ok.

Introduction to Computers and Programming Lab Manual – Page 42|222


4. Smart Art will appear on slide.

Add Text to Smart Art Graphic

1. When you select Smart Art. The Smart Art pane will appear on side as shown above.
2. Enter the text on each bullet on the task pane. It automatically re-size a shape.

Introduction to Computers and Programming Lab Manual – Page 43|222


3. You can add a shape using Enter in Smart Art pane.

2.3Exercise for Lab

Slide Basics

1. Create a new PowerPoint Presentation.


2. Insert a new slide with the Title and Content layout.
3. Add some text to the title placeholder.
4. Change the layout of the slide.
5. Insert a blank slide and then add text box on the slide.

Smart Art Graphics

1. Create a new presentation.


2. Insert a Smart Art Graphics.
3. Enter text into graphic.
4. Try adding and deleting shapes between the levels

Introduction to Computers and Programming Lab Manual – Page 44|222


5. Change colour schemes
6. Change Smart Art styles

Applying Animation

1. Create a new PowerPoint Presentation.


2. Add an entrance effect to an object.
3. Use animation Painter to copy the object of another object.
4. Use the Animation pane to reorder the effects.
5. Add two additional effects to one of the objects.

2.4 Home Work

Applying Themes

1. Create a new PowerPoint Presentation.


2. Apply different themes.
3. Try select theme Ion.

Applying Transitions

1. Create a new PowerPoint Presentation.


2. Select a slide apply any transition.
3. Change the transition duration.
4. Add a sound effect to Transition.
5. Apply a Dynamic slide transition.
6. Remove transition of slides.

Introduction to Computers and Programming Lab Manual – Page 45|222


Lab # 02(continued)

Microsoft Excel Document

2.1 Objective
To familiarize student with Excel environment.
To familiarize students with plotting charts.

Familiarize student to use formula and perform calculations using Excel.


To familiarize students with Conditional formatting.

To familiarize students with freezing pane


2.2 Scope
Student should know at end of this lab

Student should be able to perform different calculation using formulae excel

Student must know how to create charts, different types of charts

Student should be able to format cells on basis of different condition.


Students should be able to freeze panes with respect to column and row
2.3 Useful Concepts
Introduction to Excel Sheet

Excel 2013 is a worksheet that allows you to store, organize, and analyze information. We will learn
how to use Excel‘s powerful features.

Name Box

Introduction to Computers and Programming Lab Manual – Page 46|222


Formula Bar

Introduction to Computers and Programming Lab Manual – Page 47|222


Cell

Worksheets

Introduction to Computers and Programming Lab Manual – Page 48|222


Creating Workbook

Excel files are called workbooks. You can create a Excel workbook in many ways such as with a new
workbook either Blank workbook or predefine template.
1. Select File Tab and Click New then Click Blank Workbook.

Sheet Basic

Whenever you work on Excel, you will use cell to enter information.

Cells Basic

A rectangle that was appear in sheet is known as cell. A cell is consist of Row and Column. Columns
are identified by Letters (A, B, C) while rows by Number (1, 2, 3). Cell Address is appear in Name
Box. Such as E5 means Column E and Row 5.
Introduction to Computers and Programming Lab Manual – Page 49|222
Cell Name or
Address appears

Fill Handle

1. Select a cell(s) you wish to use. The fill handle will appear as a small dot at the right-bottom
corner of selected cells.

Fill Handle

2. Hold and drag a fill handle to desire number of cells and release it.

Introduction to Computers and Programming Lab Manual – Page 50|222


Cell Formatting

If all cells are of same format then it is very difficult to read a workbook and extract an
information. Basic customization will allow you to draw an attention to specific section and
understand to information.

Text Alignment

The default text alignment is bottom left of the cell. You can change the alignment of the cell
horizontally or vertically from Home Tab.
1. Select the cell you want to modify
2. Select any one of the six horizontal or vertical alignment.

Introduction to Computers and Programming Lab Manual – Page 51|222


3. That will be realign.

Conditional Formatting

Conditional formatting allows you to automatically apply formatting—such as colours, icons, and data
bars—to one or more cells based on the cell value. To do this, you'll need to create a conditional
formatting rule.
1. Select a cells for a conditional formatting rule.

2. From Home Tab select, Click Conditional Formatting command. A drop down menu will appear.
3. Hover the mouse over the desired conditional formatting type, and then select the desired
rule from the menu that appears.

Introduction to Computers and Programming Lab Manual – Page 52|222


4. A dialog box will appear. Enter the desired value(s) into the blank field.
5. Select a formatting style from the drop-down menu.

6. The conditional formatting will be applied to the selected cells.

Introduction to Computers and Programming Lab Manual – Page 53|222


Simple Formulas

One of the most powerful features in Excel is the ability to calculate numerical information using
formulas. Just like a calculator, Excel can add, subtract, multiply, and divide. In this lesson we will
also show you how to use cell reference.

Cell Reference

While you can create simple formulas in Excel manually (for example, =2+2 or =5*5), most of the
time you will use cell addresses to create a formula. This is known as making a cell reference. Using
cell references will ensure that your formulas are always accurate because you can change the value
of referenced cells without having to rewrite the formula.

By combining a mathematical operator with cell references, you can create a variety of simple
formulas in Excel. Formulas can also include a combination of cell references and numbers, as in the
examples below.

Introduction to Computers and Programming Lab Manual – Page 54|222


Freezing Pane

Excel includes several tools that make it easier to view content from different parts of your
workbook at the same time, such as the ability to freeze panes and split your worksheet.

To freeze rows

You may want to see certain rows or columns all the time in your worksheet, especially header cells.
By freezing rows or columns in place, you'll be able to scroll through your content while continuing
to view the frozen cells.
1. Select the row below the row(s) you wish to freeze. In our example, we want to freeze rows
1, 2and 3, so we'll select row 4.

2. Click the view tab on the Ribbon.


3. Select the Freeze Panes command and then select Freeze Panes from the drop down list.

4. The rows will be frozen in place, as indicated by the thin gray line.

Introduction to Computers and Programming Lab Manual – Page 55|222


Charts

It can often be difficult to interpret Excel workbooks that contain a lot of data. Charts allow you
to illustrate your workbook data graphically, which make it easy to visualize comparisons and trends.

Insert a chart

1. Select a cells you want to chart including columns titles and row labels. These cells will be
source data of the Chart.

2. From Insert Tab, Click the desire chart command. We select columns.
3. Choose the desire chart type from the drop down list.

4. Selected chart will be inserted in worksheet.

Introduction to Computers and Programming Lab Manual – Page 56|222


2.4 Exercises for Lab

Cell formatting
1. Create a new Excel workbook.
2. Select a cell and change the font style, size and colour of the text.
3. Applying bold, italics or underline to a cell.
4. Try using Vertical or Horizontal text alignment.
5. At a border to cell range.
6. Change the fill colour of cell range.

Simple Formulas
1. Create a new Excel workbook and enter some data in it.
2. Create a simple formula using cell reference.
3. Try modifying the value of cell referenced in a formula.
4. Edit the formula using the formula bar, change the sign to division (/) and minus (-).
Conditional Formatting
1. Create a new Excel workbook and enter some data in it.
2. Apply conditional formatting to a range of cells with numerical values.
3. Apply a second conditional formatting rule to the same set of cells.
4. Clear all conditional formatting rules from workbook.

Introduction to Computers and Programming Lab Manual – Page 57|222


2.5 Home Work

Freezing pane
1. Create a new Excel workbook and enter some data in it.
2. Try freezing a row or column in place. E-g: freeze top 3 rows or columns.

Charts

1. Create a new Excel workbook.


2. Enter some data in workbook and use data to create a chart.
3. Change the layout of chart using ―Quick layout‖ in Design Tab from Ribbon, It will appear
when you click on chart.
4. Apply a chart style.

Introduction to Computers and Programming Lab Manual – Page 58|222


Lab # 03

How to install Dev C++ Compiler, Edit, compile and Run a C++
Program.

3.1 Objective:
1. Learn basic components of a C program.

2. Learn compilation process.

3. Learn how to use Dev C++.

4. Learn how to write, edit & run C-Program.

3.2 Scope:

The student should know the following at the end of this lab:

1. Problem solving
2. How to install run and compile.

3. Basis structure of program


4. Writing Complete Programs

3.3 Useful Concepts:

A C-program:

A typical structure of a C program consists of:

 Pre-processor Directives that always begin with # (e.g. #include <stdio.h>)

o The two most frequent commands are #include and #define.

o #include command will include header files that have the definition of a function
used in the program like getche() function that is in stdio.h file.
o Note: #include <file> tells the compiler to look for file where system include files
are held

o #include "file" tells the compiler to look for file in the current directory where
the program was run from.
o #define is used to replace a text with a value, e.g. #define PI 3.141593

Introduction to Computers and Programming Lab Manual – Page 59|222


 Functions

A function is a block of statements that make a specific kind of processing. Every C program
has a main() function. The execution starts from main().

 Variables / identifiers

These are used to store data in a program. You must declare a variable before you use it.

Here is a general structure of a C program.


pre-processor directives #include <iostream.h>

main function heading #include <conio.h>

{ int main(void)

declarations {

executable statements cout<<“hello World”;

} getche();

Introduction to Computers and Programming Lab Manual – Page 60|222


Source File

Compilatio
n
Successful
Unsuccessf
ul

Error Object
Message Code

Linking Other
Object
Code

Executable
File

Download and Install Dev C++

1. Download Dev C++ from given link. http://www.bloodshed.net/dev/devcpp.html


2. Save it to your computer
3. Double Click the setup and you will see a following dialog box.
4. Select typical and click next

Introduction to Computers and Programming Lab Manual – Page 61|222


Introduction to Computers and Programming Lab Manual – Page 62|222
5. Select your destination folder and click install

6. Check Run Dev C++ and click finish.

Introduction to Computers and Programming Lab Manual – Page 63|222


7. Dev C++ first time configuration box will appear, click next and then ok.

8. Now your Dev C++ environment is ready to code.

Introduction to Computers and Programming Lab Manual – Page 64|222


Introduction to Computers and Programming Lab Manual – Page 65|222
9. Go to File in menu and select new then click project.

10. Write these lines of codes in your IDE.

Introduction to Computers and Programming Lab Manual – Page 66|222


11. Click Compile & Run from the menu item or the displayed icon.

12. If you did not have a syntax error on your code, you will get this output.

Introduction to Computers and Programming Lab Manual – Page 67|222


3.4 Exercises for lab
Exercises 1: - Type and save the program with the name LAB0Q1.CPP

Exercises 2: - Compile, Run, and Test the program

/* Volume of a sphere */
#include <iostream.h>
#include <stdio.h>

#include<math.h>

#define PI 3.14159

int main(void)

double radius, volume;


cout<<"enter the radius > ";

cin>>radius;

volume = 4.0 / 3.0 * PI * pow(radius,3);


cout<<"the radius of the sphere is :"<< radius;

cout<<"the volume of the sphere is :"<< volume;

getche();

return 0;

}
3.5 Home Work
1) Launch TurboC++ in your computer and run the above programs.

Introduction to Computers and Programming Lab Manual – Page 68|222


Lab # 04

Single Line Comment, Multi line Comment, printf and scanf


Statements

4.1 Objective:
To familiarize the students with the use of single line comment, multi line comment cout and cin
statements.
4.2 Scope:
The student should know the following at the end of this lab:
1. Problem Solving

2. How to use printf & scanf statements

3. Single & Multi line comments

4. Invalid nesting of multi line comments

5. Writing Complete Programs


4.3 Useful Concept
Functions printf() and scanf() are most commonly used to display output and take input
respectively.

printf()
 Instructs computer to perform an action

o Specifically, used to print the ―character, string, float, integer, octal and
hexadecimal values‖ onto the output screen.
 Escape character (\)

o Indicates that printf should do something out of the ordinary


o \n is the new line character
 Conversion Format String (%d,%s…)

o If this conversion format string matches with remaining


argument(variable/constant), value of that variable/constant is displayed.
o We use printf() function with %d format specifier to display the value of an integer
variable.
o Similarly %c is used to display character, %f for float variable, %s for string
variable, %lf for double and %x for hexadecimal variable.

Introduction to Computers and Programming Lab Manual – Page 69|222


Escape Sequences Character
\b Backspace
\f Form feed
\n Newline
\r Return
\t Horizontal tab
\v Vertical tab
\\ Backslash
\' Single quotation mark
\" Double quotation mark
\? Question mark
\0 Null character

Scanf()

 Obtains a value from the user


o scanf uses standard input (usually keyboard)

 When executing the program the user responds to the scanf statement by typing in
a character from keyboard, then pressing the enter (return) key

 The format specifier %d is used in scanf() statement. So that, the value entered is
received as an integer and %s for string.
 Ampersand is used before variable name in scanf() statement i.e. ch is written as
&ch.

Single line comments


 Text after // till next line is ignored by computer

 Used to describe program


Multi line comments

 Text surrounded by /* and */


 Used to describe program

4.4 Examples

Introduction to Computers and Programming Lab Manual – Page 70|222


Example-1:- This program demonstrates the use of printf() and the basic structure of a C
program.

#include <stdio.h>//This is needed to run printf() function.


void main()
{
printf("C Programming"); //displays the content inside quotation
getch();
}

Here’s the program’s output:

Example -2:- This program illustrates the use of single line (//text) and multi line comments (\* text *\).

#include <stdio.h>//This is needed to run printf() function.


void main()
{
printf("C Programming"); //displays the content inside quotation
/* this is multiline
comments */
getch();

Introduction to Computers and Programming Lab Manual – Page 71|222


Here’s the program’s output:

Example-3:- This program illustrates the use of nested multi line comments.

# include <conio.h>

void main()
{
printf("This is my first program in C language");
/* this is not /* allowed nested comments */ */
getch();

Here’s the program’s output:


Syntax error because of nested multi line comments

Example-4:- This program illustrates the use of nested multi line comments in printf statement.

# include <conio.h>

void main()

Introduction to Computers and Programming Lab Manual – Page 72|222


{
printf( "This is my first program in C language /* This is not a comment */") ;
getch();

Here’s the program’s output:

Example-5:- This program illustrates the use of scanf() for integer value.

#include<stdio.h>
#include<conio.h>
void main()
{
int i;
printf("Enter a value");
scanf("%d",&i);
printf( "\nYou entered: %d",i);
getch();
}

Here’s the program’s output:

Introduction to Computers and Programming Lab Manual – Page 73|222


Example-6:- This program illustrates integer addition. Also note the syntax necessary for the use
of scanf().
#include <stdio.h>
void main( )
{
int num1, num2, sum;
printf("Enter two integers: ");
scanf("%d %d",&num1,&num2); /* Stores the two integer entered by user in variable num1
and num2 */

sum=num1+num2; /* Performs addition and stores it in variable sum */


printf("Sum: %d",sum); /* Displays sum */
getch();

Here’s the program’s output:

Introduction to Computers and Programming Lab Manual – Page 74|222


Example-7:- This program illustrates different format conversion in printf statement.
#include <stdio.h>
void main()
{
char ch = 'A';
char str[20] = "Comsats";
float flt = 10.234;
int no = 150;
double dbl = 20.123456;
printf("Character is %c \n", ch);
printf("String is %s \n" , str);
printf("Float value is %f \n", flt);
printf("Integer value is %d\n" , no);
printf("Double value is %lf \n", dbl);
printf("Octal value is %o \n", no);
printf("Hexadecimal value is %x \n", no);
getch();
}

Example-8:- This program illustrates different format conversion in scanf statement.

#include <stdio.h>
int main()
{
char ch;
Introduction to Computers and Programming Lab Manual – Page 75|222
char str[100];
printf("Enter any character \n");
scanf("%c", &ch);
printf("Entered character is %c \n", ch);
printf("Enter any string ( upto 100 character ) \n");
scanf("%s", &str);
printf("Entered string is %s \n", str);
}

Exercises for lab


Exercise 1:- Write a program to display:
Your name:
Your ID:
Your Course name:

Exercise 2:- Write a program that prints the following diagram using printf statement.
*********
* *
* *
*********
4.5 Home Work:
1) Write a program that take six subjects marks from user and display the sum of all marks.

Introduction to Computers and Programming Lab Manual – Page 76|222


Lab # 05

Data Types

5.1 Objective:
Learn the Problem Solving and Basics C Language
5.2 Scope:
The student should know the following:
 Problem Solving
 Different data types of C and their Use.
 Declaring Variables
 Standard Input and Output
 Writing Complete Programs
5.3 Useful Concept:
An useful List of basic data type of C , number of bytes used to store these data types in memory
of computer system:

Data Type Bytes


Signed char 1

unsigned char 1

sort signed int 2

short unsigned int 2

long signed int 4

long unsigned int 4

float 4

double 8

long double 10

Variables
 C variable is a named location in a memory where a program can manipulate the data. This
location is used to hold the value of the variable.
 The value of the C variable may get change in the program.

Introduction to Computers and Programming Lab Manual – Page 77|222


 C variable might be belonging to any of the data type like int, float, char etc.

Rules for naming C variable:


1. Variable name must begin with letter or underscore.
2. Variables are case sensitive

3. They can be constructed with digits, letters.


4. No special symbols are allowed other than underscore.

5. sum, height, _value are some examples for variable name


Declaring & initializing C variable:

 Variables should be declared in the C program before to use.

 Memory space is not allocated for a variable while declaration. It happens only on variable
definition.

 Variable initialization means assigning a value to the variable.

S.No Type Syntax Example

1 Variable declaration data_type variable_name; int x, y, z; char flat, ch;

Variable data_type variable_name = int x = 50, y = 30; char flag = ‗x‘,


2
initialization value; ch=‘l‘;

5.4 Examples:

Example-1:- This program illustrates integer addition. Also note the


syntax necessary for the use of scanf().
#include <stdio.h>
void main( )
{
int num1, num2, sum;
printf("Enter two integers: ");
scanf("%d %d",&num1,&num2); /* Stores the two integer entered by user
in variable num1 and num2 */

sum=num1+num2; /* Performs addition and stores it in variable sum */


printf("Sum: %d",sum); /* Displays sum */
getch();

}
Introduction to Computers and Programming Lab Manual – Page 78|222
Here‘s the program‘s output:

Example-2:- This program illustrates different format conversion in


printf statement.
#include <stdio.h>

void main()

char ch = 'A';
char str[20] = "Comsats";

float flt = 10.234;

int no = 150;

double dbl = 20.123456;

printf("Character is %c \n", ch);


printf("String is %s \n" , str);

printf("Float value is %f \n", flt);

printf("Integer value is %d\n" , no);


printf("Double value is %lf \n", dbl);
printf("Octal value is %o \n", no);

printf("Hexadecimal value is %x \n", no);

getch();

Introduction to Computers and Programming Lab Manual – Page 79|222


Example-3:- This program illustrates different format conversion in
scanf statement.

#include <stdio.h>
int main()
{
char ch;
char str[100];
printf("Enter any character \n");
scanf("%c", &ch);
printf("Entered character is %c \n", ch);
printf("Enter any string ( upto 100 character ) \n");
scanf("%s", &str);
printf("Entered string is %s \n", str);
}

Introduction to Computers and Programming Lab Manual – Page 80|222


Example- 4:- This program calculates the area of the circle. The area of
the circle is ∏r². ∏ value is constant that is 3.14 but radius can change so
this program gets the value of radius variable form user and calculate the
area on that value.

# include <conio.h>
void main()
{
float radius,area;
printf( "Enter radius of circle: ");
scanf( "%f", &radius) ;
area = 3.14*radius*radius;
printf( "Area of the circle is: %f \n", area);
getch();
}

Example- 5:- This program illustrates the addition on charter values.

# include <conio.h>
void main()
{
char x, y ;
int z ;
x = 'a' ;
y = 'b' ;
z=x+y; //Add the assci value of 'a' with assci value of 'b' and store in z.
printf("Sum of the characters : %d \n", z);
}
Introduction to Computers and Programming Lab Manual – Page 81|222
Example - 6:- This program illustrates the use of sizeof() function which is used to find the
memory space allocated for each C data types.

#include <stdio.h>

#include <limits.h>

int main()

int a;
char b;

float c;
double d;

printf("Storage size for int data type:%d \n",sizeof(a));

printf("Storage size for char data type:%d \n",sizeof(b));


printf("Storage size for float data type:%d \n",sizeof(c));

printf("Storage size for double data type:%d\n",sizeof(d));

return 0;
}

Introduction to Computers and Programming Lab Manual – Page 82|222


5.5 Exercises for lab
Exercise 1:- Write a program to compute circumference of a circle.

Exercise 2:-Write a program that takes any ASCII value from user and display next five char after
that ASCII value.

Hints: - if user enters 95, your program should display the char against the ASSCII value
96,97,98,99 and 100.
5.6 Home Work
1. Write a program converts a temperature from Celsius to Fahrenheit. Use the following formula:
F = 1.8 x C + 32 .
2. Write a program that reads three integers representing hours, minutes, and seconds of a time.
Then it calculates the equivalent time in seconds.

Introduction to Computers and Programming Lab Manual – Page 83|222


Lab# 06

Arithmetic Operators, Arithmetic Expressions and math functions

6.1 Objective
Learn using operators, expressions and math functions.
6.2 Scope
The student should know the following at the end of this lab:
1. Arithmetic Operators

2. Arithmetic Expressions

3. Math Functions

4. Writing Complete Programs

6.3 Useful Concepts


Arithmetic Operators:
To solve most programming problems, you will need to write arithmetic expressions that manipulate
type int and double data. In C language, these are the basic arithmetic operators: addition (+),
subtraction (-), multiplication (*),division (/), and remainder (%)

If the operands are of different types, the one with weaker type will be raised to the level of the
other type, then the operation will be performed. The order is char, int, long, float, double.

The division between two integer numbers results in an integer result (as you can see 5/2 gives 2
not 2.5).

The division by zero is undefined. Either you get a compilation warning or a run time error.
The remainder operator % is related to the division one. This operator will give the remainder
produced by dividing the two numbers (5 % 2 = 1). Therefore, this operator is not used with double
values. If one of the operand or both are double, you will get an error message from the compiler
saying:
Illegal use of floating point

Arithmetic Expressions:
Arithmetic expressions contain a combination of the arithmetic operations including brackets:
x = z – (a + b / 2) + w * -y

To evaluate the expression, we need to follow the precedence rule which is as follows:

Introduction to Computers and Programming Lab Manual – Page 84|222


1. ( ) expression within parentheses

2. +, - unary operators (plus and minus sign)


3. *, /, % multiplication, division and remainder are evaluated from left to right
4. +, - addition and subtraction are evaluated from left to right

6.4 Examples:
Example1: Program illustrates how to input two variables from the user and display their sum. Both
variables are integers.
#include<stdio.h>

#include<conio.h>

int main ()

{
int val1,val2, result=0;

printf("Enter the first value: ");

scanf("%d", &val1);

printf("\nEnter the second value: ");


scanf("%d", &val2);

result=val1+val2;

printf("\nThe sum of the first and second numbers is :%d", result);

getch();
}

Here is the output of the above result

Introduction to Computers and Programming Lab Manual – Page 85|222


Example2:This program illustrates some arithmetic properties of integer
(int) variables. Trace through the program to make sure you understand the
values of each variable in all stages of the program.

#include<stdio.h>

#include<conio.h>
int main ()
{

int a=4, b, c;

printf("a= %d b= %d c= %d",a,b,c);
b=6;
c=a+b;

printf("\na= %d b= %d c= %d",a,b,c);

a++; //this statement is similar to a=a+1;

b -= 2; //this statement is similar to b= b-2;

--c; //this statement is similar to c=c-1;

printf("\na= %d b= %d c= %d",a,b,c);
b *= ++a; //a=a+1;, b=b*a;

printf("\na= %d b= %d c= %d",a,b,c);
c /= a++; //c=c/a;, a=a+1;

printf("\na= %d b= %d c= %d",a,b,c);

a = (b+c)*4; //First (b+c) then multiply the result with 4.

c = b+c*4; //First c*4 then result is added with b.


printf("\na= %d b= %d c= %d",a,b,c);

getch();
}

The output for the above program is

Introduction to Computers and Programming Lab Manual – Page 86|222


Example3: Program illustrates how to initialize two characters and displays the effect of addition.

#include<conio.h>

#include<stdio.h>

int main ()
{

char val1,val2;

int sum=0;
val1='a';

val2='b';

printf("The first character is: %c",val1);

printf("\nThe second character is: %c",val2);

sum=val1+val2;
printf("\nThe sum of the values entered is: %d",sum);

getch();

}
The output for the above given program is

Introduction to Computers and Programming Lab Manual – Page 87|222


Example 4: Input a 3 digit value from the user (forexample 521) and display it in reverse order (i.e.
125).
#include<conio.h>
#include<stdio.h>

int main ()
{

int n,a,b;
printf("Enter the 3 digit value to be reversed:");

scanf("%d", &n);

a=n/100;
n=n%100;

b=n/10;

n=n%10;

printf("The reverse order is: %d%d%d",n,b,a);

getch();
}

The output of this program is shown below

Math function:

To do some advanced mathematical functions in C, there is a header file called <math.h> that has
different trigonometric and algebraic functions. Here are some frequently used functions:

pow(x,y) xy pow(5,3) = 53 = 125

sqrt(x) x (x > 0) sqrt(4) = 4 =2

Introduction to Computers and Programming Lab Manual – Page 88|222


log(x) ln x (x > 0) log(5) = 1.6094

log 10 x
log10(x) (x > 0) log10(5) = 0.698970
exp(x) ex exp(2) = 7.3891

sin(x) sin x (x in radian) sin(90) = 0.893997


cos(x) cos x (x in radian) cos(90) = -0.448074

tan(x) tan x (x in radian) tan(90) = -1.9952

asin(x) sin-1 x ( x in [-1,1]) asin (0) = 0


acos(x) cos-1 x (x in [-1,1]) acos(0) = 1.570796
atan(x) tan-1 x atan(0) = 0

Note that you have to include the header file math.h before you use any of these functions. Also,
the return type of these functions is double.

Example1: Input the values for base and exponent and calculate its power using the pow(x,y) built
in function.

#include<conio.h>

#include<stdio.h>

#include<math.h>

int main ()
{

int base,expo,result=0;

printf("enter the value for the base:");


scanf("%d",&base);

printf("enter the value for the exponent:");

scanf("%d",&expo);
result= pow(base,expo);
printf("the result is: %d", result);

getch();

}
The output for the given program is

Introduction to Computers and Programming Lab Manual – Page 89|222


6.5 Exercise for Lab
Exercise 1: Write a program that finds the area of a triangle given the length of its sides: a, b, c.

area  s  s  a   s  b   s  c 
abc
s
2

Exercise 2: Write a program taking two values as inputs from the user and display the results for
all the basic arithmetic operations performed on them

Addition

Subtraction
Multiplication

Division

Modulus

Exercise 3: Write a program that inputs a 4 digit value from the user (for example 6382) and
displays a result with an increment of 1 in each digit (i.e. 7493)
6.6 Home Task
1. Write a program that takes any ASCII value from user and display next five char after
that ASCII value.

2. Write a program that reads a four digit number from user, then the program separates
digits of the number e.g. 4567 to be displayed as:

4
5

Introduction to Computers and Programming Lab Manual – Page 90|222


Lab# 07

Decision Control Structure

7.1 Objective
The student should practice the following statements:
1. if statemets

2. if-else statements
3. Nested if/if-else

5. Switch statement¨
7.2 Scope
By the end of this lab a student should know:

1. Syntax of if and nested if statements.

2. Syntax of switch and nested switch statements.


7.3 Useful concept
If Statement:

Sometimes in your program you need to do something if a given a condition is satisfied.


Suppose for example, you want to display a congratulatory message in case a student has passed a
course, the marks must be greater than 50%.

7.4 Examples
#include<conio.h>
#include<stdio.h>

int main ()

{
int marks,total,percent=0;
printf("Enter the marks obtained in itcp:");

scanf("%d", &marks);
printf("Enter the total marks of the subject:");
scanf("%d",&total);

percent= (marks*100)/total;

if (percent>=50)
Introduction to Computers and Programming Lab Manual – Page 91|222
printf("Congragulations you have passed this subject");

getch();
}
Output for the above program is

If you want to execute more than one statement based on that condition, then your statements
should be enclosed with brackets. For example

#include<conio.h>
#include<stdio.h>

int main ()
{

int marks,total,percent=0;

printf("Enter the marks obtained in itcp:");

scanf("%d", &marks);

printf("Enter the total marks of the subject:");

scanf("%d",&total);
percent= (marks*100)/total;

if (percent>=50)
{
printf("Congragulations you have passed this subject");

printf(―Well done‖);

}
getch();

}
If-else statements

Introduction to Computers and Programming Lab Manual – Page 92|222


In case you want to have an alternative action to be taken if the condition is not satisfied, then use
an if-else statement. For example:

#include<conio.h>

#include<stdio.h>
int main ()

{
int marks,total,percent=0;

printf("Enter the marks obtained in itcp:");

scanf("%d", &marks);
printf("Enter the total marks of the subject:");

scanf("%d",&total);

percent= (marks*100)/total;

if (percent>=50)

{
printf("Congratulations you have passed this subject");

else

printf(" Sorry you did not pass this course, Better luck next time");
getch();

The output for the above program in case the condition is not satisfied (else part is executed) is
shown below

Here, if the condition is true, the if-part will be executed and the else-part is ignored. But if the
condition is false, the if-part is ignored and the else-part is executed.

Introduction to Computers and Programming Lab Manual – Page 93|222


Be careful with compound statements, forgetting the brackets will produce an error because only
the first statement is executed if the condition is true, the rest are considered to be unrelated
statements and the compiler will complain about the keyword else.
Example: Input a number from user and display whether it is a positive or negative number

#include<conio.h>
#include<stdio.h>

int main ()
{

int value;
printf("Enter a number ");

scanf("%d", &value);

if (value>0)

printf("The value you have entered is a positive number");

else

printf("The value you have entered is a negative value");


getch();

Output for the program with if condition being true

Output for the same program with if condition false

Multiple if-else-if statements


Introduction to Computers and Programming Lab Manual – Page 94|222
If-else-if statement can be used to choose one block of statements from many blocks of
statements. It is used when there are many options and only one block of statements should be
executed on the basis of a condition. Consider the following example
Example: Input 5 values from the user and display the maximum number from the list.

#include<stdio.h>
#include<conio.h>

int main ()
{

int a,b,c,d,e;
printf("enter 1st number: ");

scanf("%d",&a);

printf("enter 2nd number: ");

scanf("%d",&b);

printf("enter 3rd number: ");

scanf("%d",&c);
printf("enter 4th number: ");

scanf("%d",&d);

printf("enter 5th number: ");

scanf("%d",&e);
if(a>b&&a>c&&a>d&&a>e)

printf("%d is greatest",a);

}
else
if(b>a&&b>c&&b>d&&b>e)

printf("%d is greatest",b);

else
if(c>a&&c>b&&c>d&&c>e)

Introduction to Computers and Programming Lab Manual – Page 95|222


printf("%d is greatest",c);

}
else
if(d>a&&d>b&&d>c&&d>e)

{
printf("%d is greatest",d);

}
else

if(e>a&&e>b&&e>c&&e>d)

printf("%d is greatest",e);
}

getch();

The output for this program is

Example: Prompt the user to enter the salary and grade of an employee. If the employee has a
grade greater than 15 then add 50% bonus to the employee‘s salary. Otherwise if the employee‘s
grade is less than 15 then add 25% bonus to the employee‘s salary.
#include<stdio.h>

#include<conio.h>

int main()
{

int grad,sal,bonus;
printf("enter salary");

scanf("%d",&sal);

Introduction to Computers and Programming Lab Manual – Page 96|222


printf("enter grade");

scanf("%d",&grad);
if (grad>15)
{

bonus=sal*(50.0/100.0);
printf("total salary with 50 percent bonus %d",bonus+sal);

}
else if (grad<=15)

bonus= sal* (25.0/100.0);

printf("total salary with 25 percent bonus %d",bonus+sal);


}

getch();

The output of this program is

Here each condition is tested one by one starting from the first one. If one of them is true, then
the statement associated with that condition is executed and the rest are ignored.
Nested if structure:
An if statement within an if statement is called nested if statement. In nested structure, the
control enters into the inner if only when the outer condition is true. Only one block of statements
are executed and the remaining blocks are skipped automatically.

The user can use as many if statements inside another is statements as required. The increase in
the level of nesting increases the complexity of nested if statement.

Example: Prompt the user to input three values so as to display them in ascending order.
#include<stdio.h>

Introduction to Computers and Programming Lab Manual – Page 97|222


#include<conio.h>

int main ()
{
int a,b,c;

printf("Enter 3 values in any order so they can be displayed in ascending order:");


printf("\nEnter the first number:");

scanf("%d",&a);
printf("Enter the first number:");

scanf("%d",&b);

printf("Enter the first number:");

scanf("%d",&c);
if(a<b && a<c)

if (b<c)

printf("%d %d %d", a,b,c);


else

printf("%d %d %d", a,c,b);

if(b<a && b<c)


{

if (a<c)

printf("%d %d %d", b,a,c);

else
printf("%d %d %d", b,c,a);
}

if (c<a && c<b)

if (b<a)

printf("%d %d %d", c,b,a);


else

printf("%d %d %d", c,a,b);


Introduction to Computers and Programming Lab Manual – Page 98|222
}

getch();
}

Output for this program is shown below

Switch statement:

Another useful statement in C is the switch statement. This statement is somehow similar
to if statement in giving you multiple options and do actions accordingly. But its behaviour is
different. This statement tests whether an expression matches one of a number of constant
integer values labelled as cases. If one matches the expression, execution starts at that case. This
is the general structure of the switch statement:

switch (expression)

case constant: statements

break;
case constant: statements
case constant: statements;

break;
default: statements

The default clause is optional. If it is not there and none of the cases matches, no action is taken.
The break keyword is used to skip the switch statement. For example if a case matches the

Introduction to Computers and Programming Lab Manual – Page 99|222


expression and no break key words are used, the execution will go for all the statements in all
cases.

Consider this example:

#include<stdio.h>
#include<conio.h>

int main ()
{

char grade;

printf("Enter a grade in capital letters");


scanf("%c",&grade);

switch(grade)

case 'A':

printf("You have scored 90% marks");


break;

case 'B':

printf("You have scored 80% marks");

break;
case 'C':

printf("You have scored 70% marks");

break;

case 'D':
printf("You have scored 60% marks");
break;

case 'F':

printf("You have scored less than 50%");

break;

default:
printf("You have entered an invalid grade");

break;

Introduction to Computers and Programming Lab Manual – Page 100|222


}

getch();
}
7.5 Exercise for Lab
Exercise1: Prompt the user to input 5 values and display the minimum number amongst them.
Exercise2: Input 5 values from the user and display the number of positives, the number of
negatives and the number of zeros amongst the 5 values.
Exercise3: Prompt the user to input a character and display whether it is a vowel or consonant
using switch statement.
7.6 Home Task
1. Ask the user to enter marks obtained in a course and the total marks of the course. Then
display a menu

Press 1 to calculate percentage.

Press 2 to display grade.

If the user presses 1 then percentage should be displayed and if the user presses 2 the
grade against the marks should be displayed. (Hint: use switch statement for menu selection
and else if to display the grade).
2. Prompt the user to enter 3 values. For any equal values, the program should display the
numbers that are equal. (For example user input 34,6,34 the program should display the
message that the 1st and 3rd values are equal).

Introduction to Computers and Programming Lab Manual – Page 101|222


Lab # 08

LOOPS

8.1 Objective:
Learn about theprimary mechanism for telling a computer that a sequence of tasks needs to be
repeated a specific number of times.
8.2 Scope:
The student should know the following:
1. Requirement to add a number to itself ten times.
2. To execute a statement or group of statements multiple times.
8.3 Useful Concepts:
Loop statements are the primary mechanism for telling a computer that a sequence of tasks needs

to be repeated a specific number of times. Suppose, for example, that you have a requirement to

add a number to itself ten times. A loop statement allows us to execute a statement or group of

statements multiple times.

Introduction to Computers and Programming Lab Manual – Page 102|222


Why LOOPS are important?

Loops are relatively easy to implement, yet they can save you a lot of coding.
LOOPS can be of different types:
LOOPS can be divided as:

1. While Loop:
Repeats a statement or group of statements while a given condition is true. It tests the
condition before executing the loop body.
2. Do while Loop:

Like a while statement, except that it tests the condition at the end of the loop body.

3. For Loop:
Execute a sequence of statements multiple times and abbreviates the code that manages
the loop variable.

4. Nested Loop:

You can use one or more loops inside any another while, for or do. While loop.

Loops can further be distinguished as:


 Continue Statement:Causes the loop to skip the remainder of its body and immediately
retest its condition prior to reiterating.Function returning no value but accepting one or
more arguments.
 Break Statement:Terminates the loop or switch statement and transfers execution to the
statement immediately following the loop or switch.

For loop:
 The for() loop is basically three statements in one line. Within the parentheses following
the ―for‖, you have the initial expression, condition, and the loop expression. These are
separated by semicolons.
 Syntax:
 for ( ''initializer''; ''conditional expression''; ''loop expression'' )
 {
 // statements to be executed
 }
 The initializer typically initializes a counter variable. Traditionally the variable name i is
used for this purpose, though any valid variable name will do.
 Example:
 i = 0;
 The conditional expression specifies the test to perform to verify whether the loop has
been performed the required number of iterations. For example, if we want to loop 10
times:
 i < 10;

Introduction to Computers and Programming Lab Manual – Page 103|222


 Finally the loop expression specifies the action to perform on the counter variable. For
example to increment by 1:
 i++;
 The body of statements to be executed on each iteration of the loop is contained within the
code block defined by the opening ({) and closing (}) braces. If only one statement is to be
executed the braces are optional, though still recommended for code readability and so
that you don‘t forget the add them if you later increase the number of statements to be
performed in the loop.

While Loop:
The while() loop is better suited for cases where the program does not know how many times it is to
be run, and instead checks for a different condition.
 Syntax:

while (input >= 0) { // "Greater-than or equal to zero" is the same as "not negative"

sum = sum + input;


printf("%d", &input);

}
o
D0 While Loop:

In a regular for() or while() loop, the condition is checked first, then the loop is executed. This
means that if the initial condition was false to begin with, the body of the loop would never ever get
executed; the code would skip directly over the loop. The do-while loop is guaranteed to perform
one iteration of the loop first, before checking the condition. From that point on, as long as the
condition remains true, the loop will continue to execute.
 Syntax:

int n = 1;
do {
sum = sum + n;

n = n + 1;
} while (n <= 5)

Break and Continue Statement:

There are two statements (break; and continue ;) built in C programming to alter the normal flow of
program. Loops are used to perform repetitive task until test expression is false but sometimes it
is desirable to skip some statement/s inside loop or terminate the loop immediately with checking

Introduction to Computers and Programming Lab Manual – Page 104|222


test condition. On these type of scenarios, continue; statement and break; statement is used
respectively. The break statement is also used to terminate switch statement.
 Syntax:
break;

It is sometimes necessary to skip some statement/s inside the loop. In that case, continue;
statement is used in C++ programming.

Syntax:
continue;

Working Body:

Syntax:

8.4 Examples

Example – 1:- Write a program Show all odd numbers using a for loop.
#include <iostream>

Introduction to Computers and Programming Lab Manual – Page 105|222


using namespace std;

int main()
{
for (int count = 1; count <= 41; count += 2)

{
cout << count << ", ";

}
cout << endl;

return 0;

Output:
1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41,

Example – 2:- Write a program using do-while loop to display following output.
# include <stdio.h>
# include<conio.h>

int main()

int j = -5; // initialization


do

printf("%d\n", j);
j = j + 1;
}

while(j <= 0); // condition

return 0;

}
Output:

Introduction to Computers and Programming Lab Manual – Page 106|222


Example – 3:- Write a program that contains nested loops to draw a pyramid showing in output.
#include <stdio.h>

int main()
{
// variables for counter…

int i = 15, j;
// outer loop, execute this first...

// for every i iteration, execute the inner loop

while(i>0)

// display i==

printf("%d==", i);
// then, execute inner loop with loop index j,

// the initial value of j is i - 1


j=i-1;

while(j>0)

// display #

printf("#");
// decrement j by 1 until j>10, i.e j = 9

j = j - 1;
}

// go to new line, new row

Introduction to Computers and Programming Lab Manual – Page 107|222


printf("\n");

// decrement i by 1, repeat until i > 0 that is i = 1


i = i - 1;
}

return 0;
}

Output:

Example – 4:- Write a program that contains nested loops to display pyramid as shown in output.

# include <stdio.h>

# include<conio.h>

int main()

// variables for counter…

int i, j;

// outer loop, execute this first...for every i iteration,

// execute the inner loop

for(i = 1; i <= 9;)


Introduction to Computers and Programming Lab Manual – Page 108|222
{

// display i

printf("%d", i);

// then, execute inner loop with loop index j,

// the initial value of j is i - 1

for(j = i-1; j>0; )

// display ==j

printf("==%d", j);

// decrement j by 1 until j>0, i.e j = 1

j = j - 1;

// go to new line

printf("\n");

// increment i by 1, repeat until i<=9, i.e i = 9

i = i + 1;

return 0;

Output:

Introduction to Computers and Programming Lab Manual – Page 109|222


Example – 5:- Write a program that display negative numbers from 0 to 5.
# include <stdio.h>
# include<conio.h>

int main(void)
{
int i, j;

// for loop
printf("This is a for loop\n");

for(i = -5; i <= 0; i = i +1) // initial, terminal condition and iteration

printf("%d ", i);

printf("\n");

printf("\nThis is a while loop\n");


j = -5; // initial condition
// while loop

while(j <= 0) // terminal condition

printf("%d ", j);


j = j + 1; // iteration

}
printf("\nBoth constructs generate same result...\n");

return 0;
}

Introduction to Computers and Programming Lab Manual – Page 110|222


.

8.5 Exercises for lab


Exercises-1) Write a loop to do the following:

1. Read in 10 integers.

2. Find the maximum value.

3. Find the minimum value.

Exercises -2) Write a three-letter acronym-generating program. The program‘s output lists all
three-letter combinations from AAA through ZZZ, spewed out each on a line by itself.
8.6 Home Work
1) Write a program that calculate the factorial of a number using while loop.
2) Write a program that inputs a number from a user and display its multiples using for loop.
3) Write a program that inputs a number and length from a user and display its table.

Introduction to Computers and Programming Lab Manual – Page 111|222


Lab # 09

Arrays

9.1 Objective:
Learn how to declare, initialize and use one-dimensional arrays.
9.2 Scope:
The student should know the following:
3. Syntax of array declaration
4. assigning and processing and elements
9.3 Useful Concepts:
An array is a collection of two or more adjacent memory cells, called array elements that
are associated with a particular symbolic name. Arrays are very useful construct to store related
values together instead of declaring several variables for each value.
To set up an array in memory, we must declare both the name of the array and the number of cells
associated with it.
The following declaration will instruct the compiler to allocate eight memory cells with the name x;
these memory cells will be adjacent to each other. Each element may contain a value of type double.
double x[8];

0 1 2 3 4 5 6 7

As you can see; the name of the array x points to the first element of the array.

We can define a constant for array size and use it whenever we declare an array.

Introduction to Computers and Programming Lab Manual – Page 112|222


#define NUM_STUDENTS 8

int id[NUM_STUDENTS];
double gpa[NUM_STUDENTS];
To access the data stored in an array, we reference each individual element by specifying the array
name and identifying the element desired.
x[0] the value of the first element

x[3] the value of the fourth element


x[7] the value of the eighth element

NOTE: The indices of the elements start from 0 not from one.

Array initialization:

We can initialize an array directly by specifying each cell value individually as follows:

double values [] = {12.5,17.9,23.5,-2.5,115.75,-55.3};

Hence here we do not need to specify the size of the array or how many elements this array should
have. This number can be deduced from the initialization list.
We can also use for loop which is the common way to deal with arrays in general. The following code
initializes array square to squares of the indices:

int square [8], i;


for (i=0; i < 8; ++i)

square[i] = i * i;

The array square will be like this after the loop:

0 1 4 9 16 25 36 49

[0] [1] [2] [3] [4] [5] [6] [7]

Array Processing:

Elements of the array are dealt as normal variables, the only difference here is to specify
the index desired. These statements are examples of using array elements:

Introduction to Computers and Programming Lab Manual – Page 113|222


16.0 12.0 28.0 26.0 2.5 12.0 14.0 -54.5

x[0] x[1] x[2] x[3] x[4] x[5] x[6] x[7]

cout<< x[0]; display the value of x[0], which is 16.0

x[3] = 25.0; stores the value 25.0 in x[3]


sum = x[0] + x[1]; stores the sum of x[0] and x[1], which is 28.0

in the variable sum

sum += x[2]; adds x[2] to sum. The new sum is 34.0

x[3] += 1.0; increments x[3] by 1


x[2] = x[0] + x[1]; stores the sum of x[0] and x[1] in x[2]

the new x[2] is 28.0

We can apply any expression to specify the index as well. Consider these statements:

i = 5;
cout<< x[i+1]; display 14.0 (value of x[6])

x[i-1] = x[i]; assigns 12.0 (value of x[5]) to x[4]

cout<<x[i++]; display 12.0 (value of x[5])

cout<<x[2*i]; Invalid index. Attempt to display x[10]

Introduction to Computers and Programming Lab Manual – Page 114|222


9.4 Examples

Example – 1:-Write a program that contains an array of ten elements, take ten values from user,
assign the value to each element of array and display the all array elements.

#include <stdio.h>
int main ()
{
int n[ 10 ]; /* n is an array of 10 integers */
int i,j;

n[10]={100, 101, 102, 103, 104, 105, 106, 107, 108,109 };

/* output each array element's value */


for (j = 0; j < 10; j++ )
{
printf("Element[%d] = %d\n", j, n[j] );
}

return 0;
}

Output:-

Example – 2:- Write a program that adds all elements of array.


#include<stdio.h>
#include<conio.h>

void main()
{
int a[5];

Introduction to Computers and Programming Lab Manual – Page 115|222


int i,sum=0;

clrscr();
printf("Enter the array elements\n");
for (i=0; i<5; i++)
scanf("%d",&a[i]);

// sum of array elements


for (i=0; i<5; i++)
{
sum=sum+a[i];
}
printf("Sum of array elements===%d",sum);
} // end of main()

Output:-

Example – 3:- Write a program that takes an integer value from user and search it in array, If
found then display message ‗Number Found‘ else ‗Number Not Found.

#include <stdio.h>

int main()
{
int array[100], search, c, n;

printf("Enter the number of elements in array\n");


scanf("%d",&n);

printf("Enter %d integer(s)\n", n);

Introduction to Computers and Programming Lab Manual – Page 116|222


for (c = 0; c < n; c++)
scanf("%d", &array[c]);

printf("Enter the number to search\n");


scanf("%d", &search);

for (c = 0; c < n; c++)


{
if (array[c] == search) /* if required element found */
{
printf("%d is present at location %d.\n", search, c+1);
break;
}
}
if (c == n)
printf("%d is not present in array.\n", search);

return 0;
}

Output:-

Example – 4:- Write a Program that finds maximum number in an array


#include <stdio.h>

int main()
{
int array[100], maximum, size, c, location = 1;

printf("Enter the number of elements in array\n");


scanf("%d", &size);

Introduction to Computers and Programming Lab Manual – Page 117|222


printf("Enter %d integers\n", size);

for (c = 0; c < size; c++)


scanf("%d", &array[c]);

maximum = array[0];

for (c = 1; c < size; c++)


{
if (array[c] > maximum)
{
maximum = array[c];
location = c+1;
}
}

printf("Maximum element is present at location %d and it's value is %d.\n", location, maximum);
return 0;
}

Output:-

Example – 5:- Write a program that shows reverse of an array.


#include <stdio.h>
int main()
{
int n, c, d, a[100], b[100];

printf("Enter the number of elements in array\n");


scanf("%d", &n);

Introduction to Computers and Programming Lab Manual – Page 118|222


printf("Enter the array elements\n");

for (c = 0; c < n ; c++)


scanf("%d", &a[c]);

for (c = n - 1, d = 0; c >= 0; c--, d++)


b[d] = a[c];

//Copying reversed array into original.


//Here we are modifying original array, this is optional.

for (c = 0; c < n; c++)


a[c] = b[c];

printf("Reverse array is\n");

for (c = 0; c < n; c++)


printf("%d\n", a[c]);

return 0;
}

Output:-

Example – 6:-Write a Program for binary search.


#include <stdio.h>

int main()

Introduction to Computers and Programming Lab Manual – Page 119|222


{
int c, first, last, middle, n, search, array[100];
printf("Enter number of elements\n");
scanf("%d",&n);
printf("Enter %d integers\n", n);
for (c = 0; c < n; c++)
scanf("%d",&array[c]);
printf("Enter value to find\n");
scanf("%d", &search);
first = 0;
last = n - 1;
middle = (first+last)/2;

while (first <= last) {


if (array[middle] < search)
first = middle + 1;
else if (array[middle] == search) {
printf("%d found at location %d.\n", search, middle+1);
break;
}
else
last = middle - 1;
middle = (first + last)/2;
}
if (first > last)
printf("Not found! %d is not present in the list.\n", search);
return 0;
}

Output:-

Introduction to Computers and Programming Lab Manual – Page 120|222


Example –7:- Write a Program to find sum of two matrices.
#include <stdio.h>

int main()
{
int m, n, c, d, first[10][10], second[10][10], sum[10][10];

printf("Enter the number of rows and columns of matrix\n");


scanf("%d%d", &m, &n);
printf("Enter the elements of first matrix\n");

for (c = 0; c < m; c++)


for (d = 0; d < n; d++)
scanf("%d", &first[c][d]);

printf("Enter the elements of second matrix\n");

for (c = 0; c < m; c++)


for (d = 0 ; d < n; d++)
scanf("%d", &second[c][d]);

printf("Sum of entered matrices:-\n");

for (c = 0; c < m; c++) {


for (d = 0 ; d < n; d++) {
sum[c][d] = first[c][d] + second[c][d];
printf("%d\t", sum[c][d]);
}
printf("\n");
}

return 0;
}

Output:-

Introduction to Computers and Programming Lab Manual – Page 121|222


Example – 8:- Write a program to find transpose of matrix.
#include <stdio.h>

int main()
{
int m, n, c, d, matrix[10][10], transpose[10][10];

printf("Enter the number of rows and columns of matrix\n");


scanf("%d%d", &m, &n);

printf("Enter the elements of matrix\n");

for (c = 0; c < m; c++)


for(d = 0; d < n; d++)
scanf("%d",&matrix[c][d]);

for (c = 0; c < m; c++)


for( d = 0 ; d < n ; d++ )
transpose[d][c] = matrix[c][d];

printf("Transpose of entered matrix :-\n");

for (c = 0; c < n; c++) {


for (d = 0; d < m; d++)
printf("%d\t",transpose[c][d]);
printf("\n");
}

return 0;

Introduction to Computers and Programming Lab Manual – Page 122|222


}

Output:-

Example – 9:- Write a program that passes an array containing age of person to a function. This
function should find average age and display the average age in main function

#include <stdio.h>
float average(float a[]);
int main(){
float avg, c[]={23.4, 55, 22.6, 3, 40.5, 18};
avg=average(c); /* Only name of array is passed as argument. */
printf("Average age=%.2f",avg);
return 0;
}
float average(float a[]){
int i;
float avg, sum=0.0;
for(i=0;i<6;++i){
sum+=a[i];
}
avg =(sum/6);
return avg;
}

Output:-

Introduction to Computers and Programming Lab Manual – Page 123|222


Example – 10:- Write a Program to show Array elements modified by a function.

#include<stdio.h>
#include<conio.h>
void modify(int b[3]);
void main()
{
int arr[3] = {1,2,3};
modify(arr);
for(i=0;i<3;i++)
printf("%d",arr[i]);
getch();
}

void modify(int a[3])


{
int i;
for(i=0;i<3;i++)
a[i] = a[i]*a[i];
}

Output:-

Introduction to Computers and Programming Lab Manual – Page 124|222


9.5 Exercises for lab
Exercises-1) Write a program that declares an array of 5 double numbers. Use a loop to read 5 real
numbers from user and fill the array. Then print the following on screen:
a. All the elements of array
b. The average of all the numbers in the array
c. The numbers below average
d. The numbers above average.
Exercises -2) Apply Bubble sort algorithms to sort elements of given array
9.6 Home Work
1) Consider the following list of student‘s grade

64 36 56 47 40 54 61 60 58 64 54
48 59 45 63 54 50 49 51 60 58 59

Initialize an array with above grades and find the following things about the above data.

a) The minimum grade


b) The maximum grade
c) Average
2) Example three only tells that number found in an array or not. Your program should also notify:
a) Index of the array where value found
b) Number of times element found in array
3) Find multiplication of two matrices using arrays

Introduction to Computers and Programming Lab Manual – Page 125|222


Lab # 10

2-D Arrays

10.1 Objective:
Learn how to declare, assign and manipulate two dimensions array.
10.2 Scope:
The student should know the following:
1. What is 2-D array?
2. Declaring 2-D arrays and bound checking.

3. Storing data in 2-D arrays and printing.

4. Passing 2-D arrays to functions.

10.3 Useful Concepts:

What is 2-D Array?


Just like single dimensional arrays we can have multidimensional arrays which are arrays of
arrays. The multidimensional arrays can be visualized as a matrix.

[0] [1] [2]


[0] 1 2 3
[1] 3 4 5
[2] 6 7 8

General representation of 2-D Array

How to declare and initialize two multidimensional Array?

int myarray[2][3];
The name of the array to be‖ myarray‖, type of the array elements to be ―int‖, dimension to be 2
(two pairs of brackets [])
The number of elements or size to be 2*3 = 6

Introduction to Computers and Programming Lab Manual – Page 126|222


Array type Array name Array dimensions=2

Int myarray[2][3] = {(51, 52, 53),(54, 55, 56)};

Two Rows Three Columns First Row Second Row

int b[2][3] = {51, 52, 53, 54, 55, 56};


 b[0][0] = 51 b[0][1] = 52 b[0][2] = 53

 Use braces to separate rows in 2-D arrays.

 int c[4][3] = {{1, 2, 3},

{4, 5, 6},

{7, 8, 9},
{10, 11, 12}};
 int c[ ][3] = {{1, 2, 3},

{4, 5, 6},
{7, 8, 9},

{10, 11, 12}};


Implicitly declares the number of rows to be 4.

Storing data in 2-D arrays and printing ?

 A nested for loop is used to input elemts in a two dimensional array.

 In this way by increasing the index value of the array the elements can be entered in a 2d
array

for(i=0 ; i<3 ; i++)

Introduction to Computers and Programming Lab Manual – Page 127|222


for(j=0 ; j<3 ; j++)

{
cin<a[i][j];
}

 The output of two-dimensional arrays should be in the form of rows and columns for
readability. Nested for loops are used to print the rows and columns in row and column
order.

 By increasing the index value of the array the elements stored at that index value are
printed on the output screen.

for(i=0 ; i<3 ; i++)

{
for(j=0 ; j<3 ; j++)

cout<<a[i][j];

} cout<<endl;
}

Passing 2-D arrays to function:

There are three ways to pass a 2D array to a function:

1. The parameter is a 2D array

int array[10][10];

void passFunc(int a[][10])

// ...

Introduction to Computers and Programming Lab Manual – Page 128|222


}

passFunc(array);
2. The parameter is an array containing pointers

int *array[10];

for(int i = 0; i < 10; i++)

array[i] = new int[10];

void passFunc(int *a[10]) //Array containing pointers

// ...

passFunc(array);
3. The parameter is a pointer to a pointer

int **array;

array = new int *[10];

for(int i = 0; i <10; i++)

array[i] = new int[10];

void passFunc(int **a)

// ...

passFunc(array);

10.4 Examples
Example -1:- A program to input elements in a two dimensional array and print it.

#include<stdio.h>

#include<conio.h>
void main()
{

int a[3][3];

int i,j;

Introduction to Computers and Programming Lab Manual – Page 129|222


clrscr();

printf(―enter the elements in the array:‖);


for(i=0 ; i<3 ; i++)
{

for(j=0 ; j<3 ; j++)


{

scanf(―%d‖,&a[i][j]);
}

for(i=0 ; i<3 ; i++)

{
for(j=0 ; j<3 ; j++)

printf(―%d‖,a[i][j]);

} printf(―\n‖);
}

getch();

Output:-

Introduction to Computers and Programming Lab Manual – Page 130|222


Example -2:-Write a program that will add two matrixes entered by the user and print it.

#include<stdio.h>
#include<conio.h>
void main()

int a[3][3],b[3][3],c[3][3];

int i,j;
clrscr();

printf(―enter the elements in both the array:‖);

for(i=0 ; i<3 ; i++)


{
for(j=0 ; j<3 ; j++)

{
scanf(―%d‖,&a[i][j]);

}
}
for(i=0 ; i<3 ; i++)

for(j=0 ; j<3 ; j++)


{

scanf(―%d‖,&b[i][j]);

}
Introduction to Computers and Programming Lab Manual – Page 131|222
}

for(i=0 ; i<3 ; i++)


{
for(j=0 ; j<3 ; j++)

{
c[i][j]=a[i][j]+b[i][j];

printf(―%d‖,c[i][j]);
}

printf(―\n‖);

getch();
}

Output:-

Example -3:- A program to input a matrix and print its transpose.

#include<stdio.h>
#include<conio.h>

void main()

Introduction to Computers and Programming Lab Manual – Page 132|222


int a[3][3],b[3][3];

int i,j;
clrscr();
printf(―enter the elements in the array‖);

for(i=0 ; i<3 ; i++)


{

for(j=0 ; j<3 ; j++)


{

scanf(―%d‖,&a[i][j]);

}
for(j=0 ; i<3 ; i++)

for(i=0 ; j<3 ; j++)

{
printf(―%2d‖,&b[j][i]);

getch();
}

Output:-

Introduction to Computers and Programming Lab Manual – Page 133|222


Example -4:-passing multi-dimensional array to function
#include<stdio.h>

#include<conio.h>
void Function(int c[2][2]);

int main(){

int c[2][2],i,j;

printf("Enter 4 numbers:\n");

for(i=0;i<2;++i)

for(j=0;j<2;++j){
scanf("%d",&c[i][j]);

}
Function(c); /* passing multi-dimensional array to function */

return 0;
}

void Function(int c[2][2]){

/* Instead to above line, void Function(int c[][2]){ is also valid */

int i,j;

printf("Displaying:\n");
for(i=0;i<2;++i)

for(j=0;j<2;++j)
printf("%d\n",c[i][j]);
Introduction to Computers and Programming Lab Manual – Page 134|222
}

Output:-
10.5 Exercises for lab
 Exercises-1) Declare and initialize a 2D arrays with different methods.

 Exercises-2) multiply two matrices and store result in third matric.

 Exercises-3) Write a program that will sort 2d array in ascending order and descending
order.

 Exercise-4) A program to input a matrix and pass to function(using all methods).

 Exercises-5) A program to input a matrix and find its determent(by using function).

10.6 Home Work


 A program to input a matrix and print its transpose.

 A program to input a matrix and find its inverse.

 A program to input a matrix and find its singular or non-singular(by using function).

 A program to input a matrix and find its mean ,median ,standard deviation(write separate
function).

Introduction to Computers and Programming Lab Manual – Page 135|222


Lab # 11

Structures in C

11.1 Objective:
To familiarize the students with the use of structure and nested structure

11.2 Scope:
The student should know the following at the end of this lab:

1. How to define and declare structures

2. How to define nested Structures


3. Pointers to the structures

4. Array of structures
5. Passing structures to the function

11.3 Useful Concept

How to declare and initialize structures:


The elements can be of any type including enumerated types, arrays and even other
structures.

e.g: struct user_record {


int id_no;
STRING name;
STRING dept;
int no_of_books;
USER_STATUS status;
};

This declares a structure with user_record as tag. Again, memory is not allocated until a variable
is declared.
A variable with the above structure can be declared as:
Introduction to Computers and Programming Lab Manual – Page 136|222
struct user_record user;
We can simplify the variable declaration above, if we use typedef in the declaration.
The above can then be defined as:
typedef struct {
int id_no;
STRING name;
STRING dept;
int no_of_books;
USER_STATUS status;
} USER_RECORD;

The variable declaration then becomes:


USER_RECORD user;
Once a variable is declared, we can access the individual elements (called fields) of the
Record using the member operator, also called the dot (.) operator.

We can combine declarations and declare structure variables at the same time that the structure
type is declared. For example:
struct date
{
int day, month, year;
} arrival_date, departure_date;
or without a structure tag
structure { int day, month, year;} arrival_date, departure_date;

Structure Initialization:

struct employee agent1={“Omer Ali”,96,3524};


For example, the following program reads and prints values for the structure variable user:
#include <stdio.h>
#include <string.h>

Introduction to Computers and Programming Lab Manual – Page 137|222


typedef char STRING[81];
typedef enum {STUDENT, STAFF, FACULTY} USER_STATUS;
typedef struct {int id_no;
STRING name;
STRING dept;
int no_of_books;
USER_STATUS status;
} USER_RECORD;

main()
{
USER_RECORD user;
user.no_of_books=0;
printf("Enter user details:\n");
printf ("ID_NO: ");
scanf(“%d”, user.id_no);
printf("NAME: ");
fflush(stdin);
gets(user.name);
printf("DEPARTMENT: ");
gets(user.dept);
printf("STATUS [0 for student, 1 for staff or 2 for faculty: ");
scanf(“%s”,user.status);
printf("\nThe details you entered are:\n");
printf("\nID_NO: %d , user.id_no);
printf("\nNAME: %s", user.name);
printf("\nDEPARTMENT:%s ", user.dept);
printf("\nSTATUS: %s ", user.status);
printf("\nNO OF BOOKS %d ",user.no_of_books);
return 0;

Introduction to Computers and Programming Lab Manual – Page 138|222


}

Nested or Compound Structure:


A structure can have as its field another structure.
e.g.
typedef struct {
int day;

int month;
int year;

} DATE;

typedef struct {

int bk_no;

STRING author;

STRING title;

STRING publisher;
DATE pub_date;

BOOK_STATUS status;

int edition } BOOK_RECORD;


BOOK_RECORD book;

Notice that we need two dot operators to access the publication date in the variable book as shown below:

book.pub_date.day=2;

book.pub_date.month=5;
book.pub_date.year=1980;

Introduction to Computers and Programming Lab Manual – Page 139|222


Arrays of structure:
Just as we use an array of standard data types, we can define an array of structures. For example,

struct date dates [10] ;

defines an array called dates, which consists of 10 elements. Each element inside the array is
defined to be of type struct date. Referencing a particular structure element inside the array is
done, by using the subscripts as done for normal variables. For example, to set the day of the 4th
structure element of dates array to 25, we write
dates[3].day = 25 ;

Assignment and comparison among structures:

Like simple variables, and unlike arrays, it is allowed to assign an entire structure to another
structure of the same type.

e.g. BOOK_RECORD book1, book2;

.. ....... /* read values for book1 */

book2 = book1.

However, comparison is not allowed on entire structures. It has to be done on field by field
basis.

Thus if (book1 = = book2) /* is not allowed */


... .....

The following function checks if two books are the same.

int samebook (BOOK_RECORD book1, BOOK_RECORD book2)


{ int samebook;

samebook = book1.bk_no == book2.bk_no;

return samebook;
}

Structures and pointers:

Introduction to Computers and Programming Lab Manual – Page 140|222


We have seen how a pointer can be defined to point to a basic data type in C such as int or char. But
pointers can also be defined to point to structures as well. Consider
struct date
{

int month ;
int day ;

int year ;
};

Just as we defined variables to be of type struct date, as in

struct date today ;


So can we define a variable to be a pointer to a struct date variable:

struct date *date_pointer ;

The variable date_pointer can be set to point to today with the assignment statement

date_pointer = &today ;

Once such an assignment has been made, we can then indirectly access any of the members of the
date structure pointed to by date_pointer in the following way:

(*date_pointer).day = 21 ;

OR

date_pointer->day = 21 ;
The symbol -> is known as structure pointer operator, which is a minus sign immediately followed by
a greater than sign.

A pointer to a structure identifies its address in the memory, and is created in the same way that a
pointer to a simple data type such as int or char is created.

11.4 Examples

Example -1:- Write a program that updates the record of a user and a book when the user
borrows the book from our small library.

void update_records( BOOK_RECORD *book, USER_RECORD *user)

{ (*book).status = BORROWED;

Introduction to Computers and Programming Lab Manual – Page 141|222


(*user).no_of_books++;

In the above example, the * is necessary since book in the function is a pointer
variable, so we need to dereference it to access the object it is pointing to.

The bracket in (*book).status is also necessary since the dot operator has high
priority than *.

Another way to represent above statement is by using the arrow operator (->).
e.g.
book -> status; is equivalent to (*book).status;

book->pub_date.day; is equivalent to (*book).pub_date.day;

Different Ways of Passing structure to Function:

This is an interactive program. It shows different ways of passing struct to functions


#include<stdio.h>

void input ( struct car * ) ;

void output ( char *, char *, int * ) ;

struct car { char maker [40] , model [40] ;


int year ;

};
int main ( )

/* declaring a structure variable */

struct car FirstCar ;


/* function calls */
/* passing the structure address */

input ( &FirstCar ) ;

Introduction to Computers and Programming Lab Manual – Page 142|222


/* passing the addresses of the structure member variables */

output ( FirstCar.maker, FirstCar.model, &FirstCar.year ) ;

puts ( "End of my act! :-) \n" ) ;

return 0 ;
}

/* input: This function expects a pointer to a structure of type struct car. It reads

data items from the keyboard and saves them in the structure member

variables.

*/
void input ( struct car * sp )

{ puts ( "*** Car Information System ***" ) ; /* title message */

printf("What is the maker of your car? " ) ; /* prompt */

gets ( sp -> maker ) ; /* read */


printf("What is the model of your car? " ) ; /* prompt */

gets ( sp -> model ) ; /* read */

printf("What year is your car? " ); /* prompt */

scanf(―%d‖,sp -> year) ; /* read */


return ;

/*

output: This function expects pointers to two strings and a pointer to an int type variable.
It displays the specified two strings and the integer number.*/
void output ( char * s1, char * s2, int * ip )

Printf("Your Car:%c %c %d―, s1, s2, * ip ;

puts ("Nice Car!" ) ; return ;

Introduction to Computers and Programming Lab Manual – Page 143|222


Example -2:- Write a program that implements the concept of nested structure.

void main()

{
struct world

{
int a;
char b;
struct country

char c;

float d;
}p;

};

struct world st ={1,'A','i',1.8};


clrscr();

printf("%d\t%c\t%c\t%f",st.a,st.b,st.p.c,st.p.d);

getch();

Output:

11.5 Exercises for lab

Exercise -1) Find output of the following:

Introduction to Computers and Programming Lab Manual – Page 144|222


#include<stdio.h>

typedef struct { int hour, minutes, seconds;} time;


void ampm(int h, int m, int s)
{

if(h>0 && h<12)


cout<<―The time now is ‖<< h<<‖:‖ m<<‖:‖ <<s<<‖am‖;

else
cout<<―The time now is ―<<h <<‖:‖<< m <<‖:‖ s<<‖pm‖;

int main ()

{
time t;

cout<<―Enter the hour‖;

cin>>t.hour;

cout<<―Enter the minutes‖;


cin>>t.minutes;

cout<<―Enter the second‖;

cin>>t.second;

ampm(t.hour, t.minutes, t.second);


return 0;

Exercise -2) Write a program that demonstrates the passing of individual structure member to the
function.
Exercise -3) What will be output of following c code?

void main()

struct employee
{

unsigned id: 8;

Introduction to Computers and Programming Lab Manual – Page 145|222


unsigned sex:1;

unsigned age:7;
};
struct employee emp1={203,1,23};

clrscr();
printf("%d\t%d\t%d",emp1.id,emp1.sex,emp1.age);

getch();
}

Exercise -4)what will be output of following c code?

void main()

{
struct field

int a;

char b;
}bit;

struct field bit1={5,'A'};

char *p=&bit1;

*p=45;
clrscr();

printf("\n%d",bit1.a);

getch();

}
Exercise -5) what will be output of following c code?

void main()

Struct country

{
char c;

float d;
Introduction to Computers and Programming Lab Manual – Page 146|222
};

struct world
{
int a[3];

char b;
struct country abc;

};
struct world st ={{1,2,3},'P','q',1.4};

clrscr();

printf("%d\t%c\t%c\t%f",st.a[1],st.b,st.abc.c,st.abc.d);

getch();
}

11.6 Home Work

1) Write a program that demonstrates the passing of entire structure as parameters to the
called function.
2) Write a program that demonstrates the passing address of the structure variable to the
called function using pointers.
3) Write a structure that demonstrates the returning of array from a function.

Introduction to Computers and Programming Lab Manual – Page 147|222


Lab # 12

Function and Parameters

12.1 Objective:
Learn how to write user defined functions which do not return value (void) OR can return single
value.
12.2 Scope:
The student should know the following:
5. Functions which neither accept any argument nor return any value(void)
6. Functions which accept arguments but do not return any value(void)
7. Functions which accept arguments and return a single result.
12.3 Useful Concepts:

Basic Concepts about Function :

A function is a block of code that performs a task. The statements written in a function are
executed when it is called by its name. The functions provide a structured programming approach.
It is a modular way of writing programs. The whole program logic is divided into a number of smaller
modules or functions. The main function calls these function when they are needed to execute.
NOTE: The program should always have a main function whether it has other function or not.
Without the main function the program will not do anything as the program always starts from the
main function.

Why functions are important?

The program may need to repeat the same piece of code at various places or it may require
repeating same task again and again. The program may become very large and messy if we do not
divide it into sub programs (functions). The piece of code that is executed repeatedly is stored in a
separate function, and is called when and where it is required.
Functions can be of different types:
Functions can be divided as:
1. User- defined Functions:

Functions written by programmers are called user-defined functions.


2. Built- in Functions:

A type of function that is available as a part of language is known as built-in function or


library function. These functions are stored in different header files e.g. clrscr ( ) is a
built-in function to clear the screen and it is part of header file called ―conio.h‖.

Introduction to Computers and Programming Lab Manual – Page 148|222


Function can further be distinguished as:
 Functions returning no value and accepting no arguments.
 Function returning no value but accepting one or more arguments.
 Function returning one value and accepting one or more arguments.

User Defined Functions:


A user-defined function consists of the following:
 Function declaration or function prototype
 Function definition
Functions Declaration or Function Prototype:
Function declaration provides information to compiler about the structure of the function to be
used in program. It ends with a semi colon. Function prototypes are usually placed at the beginning
of the source file before the main function. Function prototype consists of the following:
o Function return type
o Function name
o Number and types of parameters (Optional)
Syntax:
Return-type Function-name (Parameter list (optional));
Examples:
1. The function show neither accepts any argument nor returns any value.
Function name No
void indicates no return parameters
type void show ( );

2. The function alpha accepts a character type argument and returns no value.

Function name char indicates


void indicates no return character
type void alpha (char ); parameter

3. The function alpha1 accepts a character type argument and returns a char
value.
Function name char indicates
char indicates character character
return type char alpha1 (char ); parameter

4. The function multiple accepts an integer type argument and returns an integer
value.
Function name int indicates
int indicates integer integer
return type int multiple (int ); parameter

5. The function fact accepts an integer type argument and returns a long value.

Introduction to Computers and Programming Lab Manual – Page 149|222


Function name int indicates
long indicates long return integer
type int fact (int ); parameter

6. The function sum accepts two integer type arguments and returns an integer
value.
Function name int indicates
int indicates integer integer
return type int sum (int , int); parameters

Functions Definition:

A set of statements that explains what a function does is called function definition. The
function definition can be written at the following places.
o Before main function
o After main function
Function declaration is not required if the function definition is written before main function.
Function declaration is compulsory if function definition is written after main function. The
function definition consists of two parts:
Functions Header:

The first line of function definition is called function header. It is similar to function
prototype except that it is not terminated with semicolon. The number and sequence of parameter
in function header must be same as that of function prototype.

Functions Body:

The set of statements written inside the function are called function body. The body of the
function appears after function header and the statements are enclosed in curly braces { }.

Syntax:
Return-type Function-Name ( Parameters (optional) )
Function header

Statement 1;
Statement 2; Function body

Statement n;

Functions Call:

Introduction to Computers and Programming Lab Manual – Page 150|222


The statement that activates a function is called function call. A function is called with its name
followed by required parameters in parenthesis ―( ) ―. If there are many parameters, these are
separated by comas. If there are no parameter, empty parenthesis are used. Following steps show
the process of function call.

o The control moves to the function that is called.


o All the statements in that function body are executed.

o The control returns back to the calling function.


o The rest of the body of calling function is executed.

12.4 Examples

Example – 1:- Write a program that contains a function which displays a message ―Introduction to
Computer Programming‖.

# include <stdio.h>

# include<conio.h>

void display( ); //function declaration or prototype

void main( )
{

clrscr( );

display( ); //function call


getch();

void display( ) //function definition

{
printf(― Introduction to Computer Programming‖);

Output:

Introduction to Computers and Programming Lab Manual – Page 151|222


Execution Steps:

When user executes the program:

1. The control enters the main ( ) function‘s body.


2. clrscr( ) clears the previous data from the output screen.

3. Function call statement throws the control to ―display( )‖.

4. ―printf‖ command prints the message on the screen (as shown in image above).

5. Control is thrown back to the main ( ) function. Since there are no more statements in main ( )
function the output screen stays until user presses any key from keyboard.

Example – 2:- Write a program that contains a function which takes two numbers from user and
displays their difference.

# include <stdio.h>

# include<conio.h>

void diff ( );

void main( )

{
clrscr ( );
diff();

getch ( );
}

void diff ( )

int x;

Introduction to Computers and Programming Lab Manual – Page 152|222


int y;

printf( "Please input two numbers " );


scanf( "%d", &x );
scanf( "%d", &y );

printf( "The difference of %d and %d = %d", x,y, x-y);


}

Output:

Passing Parameters to Functions:


The values passed to the function at the time of function call are called parameters.
Parameters are written in the parenthesis. If there are more than one parameters, these are
separated by commas. Both variables and constants can be passed to function as parameters.
The sequence and type of parameters in function call must be similar to the sequence and type
of parameters in function declaration.
o Parameters in function declaration or function header are called formal parameters.

o Parameters in function call are called actual parameters.

Passing Parameters by Value:


In pass by value the value of actual parameter is copied to formal parameters. If the
function makes any changes in formal parameters, it does not affect the values of actual
parameter.

Introduction to Computers and Programming Lab Manual – Page 153|222


Example – 3:- Write a program that contains a function which takes two integer types of
arguments and displays the multiple of both integers.

#include <stdio.h>

int mult ( int x, int y );

int main()

{
int x;
int y;

printf( "Please input two numbers to be multiplied: " );

scanf( "%d", &x );

scanf( "%d", &y );

mult(x,y);

getch ();
}

Introduction to Computers and Programming Lab Manual – Page 154|222


void mult (int x, int y)

{
printf( "The product of your two numbers is %d\n", x*y);

}
Output:

Example – 4:- Write a program that contains a function which takes two integer types of
arguments and display their quotient.

# include <stdio.h>

# include<conio.h>

void add(int , int); //function declaration or prototype

void main()

int num1,num2,result;

printf("Enter Two Number:\n");

scanf("%d %d",&num1,&num2);

add(num1,num2); //function call

getch();

Introduction to Computers and Programming Lab Manual – Page 155|222


void add(int x,int y) //function definition

printf("===========================\n");

printf("Quotient: \n\n");

printf("%d / %d = %d\n", x, y, x/y);

Output:

Passing Parameters by Reference:


In pass by reference method, the memory address of actual parameter is passed to the
function. The formal parameter becomes second name for actual parameter. Formal
parameter does not occupy separate memory, it means both actual and formal parameters
refer to the same memory location. If the function makes any changes in formal
parameters, the change is also reflected in actual parameter.

Introduction to Computers and Programming Lab Manual – Page 156|222


Example – 5:- Write a program that inputs two integers in main ( ) and passes the integers to
swap( ) by reference. The swap( ) swaps the values. The main( ) should display the values before and
after swapping.

# include <stdio.h>
# include<conio.h>

void swap ( int &x, int &y );


void main()

{
clrscr();

int a,b;

printf("Enter first value: ");


scanf("%d", &a);

printf("Enter second value: ");


scanf("%d", &b);

printf("\nValues before swapping\n\n");


Introduction to Computers and Programming Lab Manual – Page 157|222
printf("a = %d\n",a);

printf("b = %d\n",b);
swap(a,b);
printf("\nValues after swapping\n\n");

printf("a = %d\n",a);
printf("b = %d\n",b);

getch ();
}

void swap( int &x, int &y)

int t;
t=x;

x=y;

y=t;

Returning Value from Functions:


A function can return a single value. The return type in function declaration indicates the type of
value returned by a function. The keyword return is used to return the value back to the calling
function. When the return statement is executed in a function, the control moves back to the
calling function along with the returned value.

Introduction to Computers and Programming Lab Manual – Page 158|222


Example – 6:- Write a program that contains calculate_area( ) which takes radius of circle as
argument and returns area of circle to main ( );

# include <stdio.h>

# include<conio.h>

float calculate_area(int);

void main()

{ clrscr();

int radius;

float area;

printf("\nEnter the radius of the circle : ");

scanf("%d",&radius);

area = calculate_area(radius);

printf("\nArea of Circle : %f ",area);

getch(); }

float calculate_area(int r)

float areaOfCircle;

areaOfCircle = 3.14 * r * r;

return areaOfCircle;

Introduction to Computers and Programming Lab Manual – Page 159|222


Example – 7:- Write a program that contains a function which takes two integer types of
arguments and display sum in main function without returning any value.

# include <stdio.h>
# include<conio.h>

void add(int , int, int &);

void main()

clrscr();
int number1,number2,sum;

printf("Enter first Number: ");


scanf("%d", &number1);

printf("\nEnter second Number: ");

scanf("%d", &number2);
add(number1,number2,sum);
printf("\n\n%d + %d = %d", number1, number2, sum);

getche();

}
void add(int x,int y,int &r)

{
r=x+y;

Introduction to Computers and Programming Lab Manual – Page 160|222


}

Example – 8:- Write a program that contains a function which takes one integer type of argument
and calculate the factorial of the number.

# include <stdio.h>
# include<conio.h>

long factorial(int);

void main()

{
clrscr();

int num; long fact;

printf("Enter Number: ");


scanf("%d",&num);
fact=factorial(num);

printf("\n\nFactorial of %d = %d",num,fact);
getch();

}
long factorial(int x)

Introduction to Computers and Programming Lab Manual – Page 161|222


long temp=1;

for(int i=x; i>0; i--)

temp=temp*i;

return temp;

12.5 Exercises for lab


Exercises-1) Write a program that contains a function which takes one integer type of argument
and displays whether it is even or odd

Exercises -2) Write a program that contains a function which takes one integer type of argument,
calculate the factorial of the number and display result in main function without returning any value
from function.
12.6 Home Work
1) Write a program that contains a function which takes one integer type of argument and confirm
that number is prime or not.
2) Solve question one but confirmation about prime number should be in main function. Your
function prototype should be look like this:

int prime(int ); return 1 if number is prime else return 2.


3) Solve question one but confirmation about prime number should be in main function and your main
function should not return any value.
void prime(int, int&);

Introduction to Computers and Programming Lab Manual – Page 162|222


Lab # 13

Recursion in C

13.1 Objectives:
This lab reviews even more basic C programming with an emphasis on recursive algorithms. You will:
1. Learn basic idea of recursion in C program.
2. Learn how to make a recursive function
3. Use programs to aid your understanding of recursion.
4. To know about importance, working & use of recursive functions.

13.2 Scope:
The student should know the following at the end of this lab:
1. Understand the idea of recursion
2. Trace a recursive function
3. The student should know how to write a recursive function
4. Should be able to convert any program written using loops into a recursive one

13.3 Useful Concepts:


What is Recursion or recursive function?

A recursive function is one that solves its task

by calling itself on smaller pieces of data.

• Similar to recurrence function in mathematics.

• Like iteration -- can be used interchangeably;


sometimes recursion results in a simpler solution.

Mathematical Definition:
RunningSum(1) = 1
RunningSum(n) =

n + RunningSum(n-1)

Recursive Function:
int RunningSum(int n) {
if (n == 1)
Introduction to Computers and Programming Lab Manual – Page 163|222
return 1;

else
return n + RunningSum(n-1);
}

A recursive function has two parts:


1. Base case (stopping condition)
2. General case (recursive step: which must always get closer to base case from one invocation
to another.)
A recursive solution always need a stopping condition to prevent an infinite loop and we achieve it
by using base case.
e.g

power(int x, int y)

if(y==0) return 1; /* base case */


else

return (x*power(x,y-1)); /*general case */

}
Any problem which we can solve using recursion, we can also solve that problem using iteration.

Generally, a recursive solution is slightly less efficient, in terms of computer time, than an
iterative one because of the overhead for the extra function calls. In many instances, however,
recursion enables us to specify a natural, simple solution to a problem that otherwise would be
difficult to solve. For this reason, recursion is an important and powerful tool in problem solving and
programming. Recursion is used widely in solving problems. That is not numeric, such as proving
mathematical theorems, writing compilers, and in searching and sorting algorithms.

In iterative method we use for, while, do-while for achieving iteration for problem solving. In
recursive method of problem solving we replace for, while, do-while statement by if statement that
selects between the recursive case and the base case (i.e terminating condition).

Detailed Example: Fibonacci Numbers

Mathematical Definition:

Introduction to Computers and Programming Lab Manual – Page 164|222


In other words, the n-th Fibonacci number is the sum of the previous two Fibonacci numbers.

Fibonacci: C Code:

int Fibonacci(int n)

{
if ((n == 0) || (n == 1))

return 1;
else

return Fibonacci(n-1) + Fibonacci(n-2);

Tracing the Function Calls:

If we are debugging this program, we might want to trace all the calls of Fibonacci.

• Note: A trace will also contain the arguments passed into the function.

For Fibonacci(3), a trace looks like:


Fibonacci(3)

Fibonacci(2)
Fibonacci(1)

Fibonacci(0)
Fibonacci(1)

13.4 Examples
Example – 1:- Write a program that takes value from user and Sum all number using recursion in c

#include<stdio.h>

using namespace std;

Introduction to Computers and Programming Lab Manual – Page 165|222


int main(){

int n,sum;
printf("Enter the value of n: ");
scanf("%d",&n);

sum = getSum(n);
printf("Sum of n numbers: %d",sum);

return 0;
}

int getSum(n){

static int sum=0;

if(n>0){
sum = sum + n;

getSum(n-1);

return sum;
}

Output:

Example – 2:- Write a program that multiple two Matrixes using recursion in c

#include<stdio.h>
#define MAX 10

using namespace std;

void multiplyMatrix(int [MAX][MAX],int [MAX][MAX]);


int m,n,o,p;

int c[MAX][MAX];
int main(){

Introduction to Computers and Programming Lab Manual – Page 166|222


int a[MAX][MAX],b[MAX][MAX],i,j,k;

printf("Enter the row and column of first matrix: ");


scanf("%d %d",&m,&n);
printf("Enter the row and column of second matrix: ");

scanf("%d %d",&o,&p);
if(n!=o){

printf("Matrix multiplication is not possible");


printf("\nColumn of first matrix must be same as row of second matrix");

else{

printf("Enter the First matrix: ");


for(i=0;i<m;i++)

for(j=0;j<n;j++)

scanf("%d",&a[i][j]);

printf("Enter the Second matrix: ");

for(i=0;i<o;i++)

for(j=0;j<p;j++)

scanf("%d",&b[i][j]);
printf("\nThe First matrix is: \n");

for(i=0;i<m;i++){

printf("\n");

for(j=0;j<n;j++){
printf("%d\t",a[i][j]);
}

printf("\nThe Second matrix is: \n");

for(i=0;i<o;i++){

printf("\n");
for(j=0;j<p;j++){

printf("%d\t",b[i][j]);
Introduction to Computers and Programming Lab Manual – Page 167|222
}

}
multiplyMatrix(a,b);
}

printf("\nThe multiplication of two matrix is: \n");


for(i=0;i<m;i++){

printf("\n");
for(j=0;j<p;j++){

printf("%d\t",c[i][j]);

}
return 0;

void multiplyMatrix(int a[MAX][MAX],int b[MAX][MAX]){

static int sum,i=0,j=0,k=0;


if(i<m){ //row of first matrix

if(j<p){ //column of second matrix

if(k<n){

sum=sum+a[i][k]*b[k][j];
k++;

multiplyMatrix(a,b);

c[i][j]=sum;
sum=0;
k=0;

j++;

multiplyMatrix(a,b);

j=0;
i++;

multiplyMatrix(a,b);
Introduction to Computers and Programming Lab Manual – Page 168|222
}

Output:

Example – 3:- Write a program that Multiply two numbers in C

#include<stdio.h>

using namespace std;


int multiply(int,int);

int main(){

int a,b,product;

printf("Enter any two integers: ");


scanf("%d%d",&a,&b);

product = multiply(a,b);

printf("Multiplication of two integers is %d",product);


return 0;

}
int multiply(int a,int b){

static int product=0,i=0;

if(i < a){


product = product + b;

i++;

Introduction to Computers and Programming Lab Manual – Page 169|222


multiply(a,b);

}
return product;
}

Output:

Example – 4:- Write a program that find LCM using recursion in c.

#include<stdio.h>

using namespace std;

int lcm(int,int);
int main(){

int a,b,l;

printf("Enter any two positive integers ");


scanf("%d%d",&a,&b);
if(a>b)

l = lcm(a,b);

else

l = lcm(b,a);
printf("LCM of two integers is %d",l);
return 0;

Introduction to Computers and Programming Lab Manual – Page 170|222


int lcm(int a,int b){

static int temp = 1;


if(temp % b == 0 && temp % a == 0)
return temp;

temp++;
lcm(a,b);

return temp;
}

Output:

Example – 5:- Write a program that find largest element in an array using recursion in c.

#include<stdio.h>

#define MAX 100

using namespace std;

int getMaxElement(int []);

int size;

int main(){
int arr[MAX],max,i;
printf("Enter the size of the array: ");

scanf("%d",&size);

printf("Enter %d elements of an array: ", size);

for(i=0;i<size;i++)

scanf("%d",&arr[i]);
max=getMaxElement(arr);

printf("Largest element of an array is: %d",max);

Introduction to Computers and Programming Lab Manual – Page 171|222


return 0;

}
int getMaxElement(int arr[]){
static int i=0,max =-9999;

if(i < size){


if(max<arr[i])

max=arr[i];
i++;

getMaxElement(arr);

return max;
}

Output:

Example – 6:-Write a program that identifies the number is prime or not using recursion in c.

#include<stdio.h>

using namespace std;


int isPrime(int,int);

int main(){
int num,prime;
printf("Enter a positive number: ");

scanf("%d",&num);

prime = isPrime(num,num/2);

Introduction to Computers and Programming Lab Manual – Page 172|222


if(prime==1)

printf("%d is a prime number",num);


else
printf("%d is not a prime number",num);

return 0;
}

int isPrime(int num,int i){


if(i==1){
return 1;
}else{

if(num%i==0)

return 0;

else

isPrime(num,i-1);

}
}

Output:

Example – 7:- Write a program that convert decimal to binary using recursion in c.

#include<stdio.h>
using namespace std;

long toBinary(int);

int main(){
long binaryNo;

int decimalNo;
printf("Enter any decimal number: ");

Introduction to Computers and Programming Lab Manual – Page 173|222


scanf("%d",&decimalNo);

binaryNo = toBinary(decimalNo);
printf("Binary value is: %ld",binaryNo);
return 0;

}
long toBinary(int decimalNo){

static long binaryNo,remainder,factor = 1;


if(decimalNo != 0){

remainder = decimalNo % 2;

binaryNo = binaryNo + remainder * factor;

factor = factor * 10;


toBinary(decimalNo / 2);

return binaryNo;

Output:

Example – 8:- Write a program for Fibonacci series using recursion in c.

C program for fibonacci series using recursion


#include<stdio.h>

using namespace std;

Void printFibonacci(int);

int main(){
int k,n;
long int i=0,j=1,f;

printf("Enter the range of the Fibonacci series: ");


Introduction to Computers and Programming Lab Manual – Page 174|222
scanf("%d",&n);

printf("Fibonacci Series: ");


printf("%d %d ",0,1);
printFibonacci(n);

return 0;
}

void printFibonacci(int n){


static long int first=0,second=1,sum;

if(n>0){

sum = first + second;

first = second;
second = sum;

printf("%ld ",sum);

printFibonacci(n-1);

}
}

Output:

Example – 9:-Write a program that takes string from user and print it in reverse using recursion in
c.

#include<stdio.h>

#define MAX 100

using namespace std;

char* getReverse(char[]);
int main(){

char str[MAX],*rev;

Introduction to Computers and Programming Lab Manual – Page 175|222


printf("Enter any string: ");

scanf("%s",str);
rev = getReverse(str);
printf("Reversed string is: %s",rev);

return 0;
}

char* getReverse(char str[]){


static int i=0;

static char rev[MAX];

if(*str){

getReverse(str+1);
rev[i++] = *str;

return rev;

Output:

Example – 10:- Write a program that finds a factorial using recursion in c.

#include<stdio.h>
using namespace std;

int fact(int);
int main(){
int num,f;

printf("\nEnter a number: ");


scanf("%d",&num);

Introduction to Computers and Programming Lab Manual – Page 176|222


f=fact(num);

printf("\nFactorial of %d is: %d",num,f);


return 0;
}

int fact(int n){


if(n==1)

return 1;
else

return(n*fact(n-1));

Output:

13.5 Exercises for lab


Exercise -1) Find gcd of a number using recursion in c program
Exercise -2) Find sum of digits of a number using recursion using cprogram

13.6 Home Work


1. Find power of a number using recursion using c program
2. Binary search through recurssion using c program
3. Write a program for palindrome using recursion
4. Find power of a number using recursion using c program
5. Reverse a number using recursion in c program
6. Write a recursive C++ function to calculate and return the sum of the following series then
call your function from the main.
7. Sum=1+2+3+….+N
8. Write a recursive C++ function to calculate and return:
9. Sum=1! +2! + 3! + … + n!

Introduction to Computers and Programming Lab Manual – Page 177|222


Introduction to Computers and Programming Lab Manual – Page 178|222
Lab # 14

Pointers

14.1 Objective:
a. Declaring pointers.
b. Storing addresses of different data type variables.
14.2 Scope:
The student should know the following at the end of this lab:

1. How to declare pointer variables.

2. How to assign address of memory location to the pointer variable.


3. How to access values pointed by pointers.
14.3 Useful Concept
 Pointers are symbolic representation of addresses.

 and can be used to access and manipulate data stored at the address to which it is pointing.

Declaring pointers:
 Just like other variables, pointers have to be declared before their usage.

Syntax:

int x=5;

int *p;
p=&x;

 Data type of variable and pointer must be same like in this case int x and int *p.

Introduction to Computers and Programming Lab Manual – Page 179|222


 The  is called indirection operator.

 The & or address operator, is a unary operator that returns the address of its operand.

How many levels of pointers can you have?


int i = 0;
int *ip01 = & i; there is no limit , but just use that
int **ip02 = & ip01; that much levels which u can
int ***ip03 = & ip02; understand easily and programs

int ****ip04 = & ip03; programs does not become confusing.

int *****ip05 = & ip04;


int ******ip06 = & ip05;

int *******ip07 = & ip06;

int ********ip08 = & ip07;


int *********ip09 = & ip08;

14.4 Examples
Example -1:-// showing pointer application

#include <stdio.h>

int main(){

int* pc;

int c;
c=22;
printf("Address of c:%d\n",&c);

printf("Value of c:%d\n\n",c);

pc=&c;
printf("Address of pointer pc:%d\n",pc);

printf("Content of pointer pc:%d\n\n",*pc);

c=11;
printf("Address of pointer pc:%d\n",pc);

printf("Content of pointer pc:%d\n\n",*pc);


*pc=2;

Introduction to Computers and Programming Lab Manual – Page 180|222


printf("Address of c:%d\n",&c);

printf("Value of c:%d\n\n",c);
return 0;
}

Output:-

Example -2:-Find a cube of a variable with a pointer argument

#include <stdio.h>

int main()

int first, second, *p, *q, sum;

printf("Enter two integers to add\n");


scanf("%d%d", &first, &second);

p = &first;

q = &second;

sum = *p + *q;

printf("Sum of entered numbers = %d\n",sum);

return 0;
Introduction to Computers and Programming Lab Manual – Page 181|222
}

Output:-

Example -3:-
#include <stdio.h>

int main()

int num=123;

/*Pointer for num*/

int *pr2;

/*Double pointer for pr2*/

int **pr1;

/* I‘m reading the address of variable num and

* storing it in pointer pr2*/

pr2 = #

/* storing the address of pointer pr2 into another pointer pr1*/


pr1 = &pr2;

/* Possible ways to find value of variable num*/


printf("\n Value of num is: %d", num);

printf("\n Value of num using pr2 is: %d", *pr2);

printf("\n Value of num using pr1 is: %d", **pr1);

Introduction to Computers and Programming Lab Manual – Page 182|222


/*Possible ways to find address of num*/
printf("\n Address of num is: %u", &num);
printf("\n Address of num using pr2 is: %u", pr2);

printf("\n Address of num using pr1 is: %u", *pr1);

/*Find value of pointer*/


printf("\n Value of Pointer pr2 is: %u", pr2);

printf("\n Value of Pointer pr2 using pr1 is: %u", *pr1);

/*Ways to find address of pointer*/


printf("\n Address of Pointer pr2 is:%u",&pr2);

printf("\n Address of Pointer pr2 using pr1 is:%u",*pr1);

/*Double pointer value and address*/


printf("\n Value of Pointer pr1 is:%u",pr1);

printf("\n Address of Pointer pr1 is:%u",&pr1);

return 0;
}

Output:-

Introduction to Computers and Programming Lab Manual – Page 183|222


14.5 Exercises for lab
 Exercise 1) A program to declare 5 pointers and print its addresses.

 Exercise 2) A program to Add address of two pointers.

 Exercise 3) A program to point a pointer upto 5 levels and print them.

 Exercise 4) A program to implement basic mathematics (Add, Subtract, Multiply) by using


functions and pointers.

 Exercise 5) A program to declare a pointer of 1D Array and print its addresses.

14.6 Home Work


 A program to take information of Student (name, age, department, cgpa) and print its
addresses along with its values.

 A program to sort a 2D array (using pointers).

 A program to declare a pointer of 2D array and check its address is even or odd(using
functions).

Introduction to Computers and Programming Lab Manual – Page 184|222


Lab # 15

Strings

15.1 Objective:
Learn how to declare, initialize and use one-dimensional character arrays (string).
15.2 Scope:
The student should know the following:
1. What is string?
2. How to Read and Print Strings.
3. Some important built-in string functions. How to use them?
15.3 Useful Concepts:
What is String?
A string is any sequence of characters enclosed in double quotes. There is no separate data
type for strings as integer, float or double. The string data type can be considered as a char array.
The difference is that a character variable can hold only one character but a string can have more
than one character in a character array. For example, a string called name with 9 characters can be
declared as:

char name [9] = ―I like C‖ ;

Check for the double quotes, the char array size 9. Here the name can be considered as one string
or as an array of characters. That is if you refer name it is ―I like C‖ and if you refer name[0] it is
‗I‘, name[1] is ‗ ‗ (a blank), name[2] is ‗l‘, name[3] is ‗i‘, and so on. The last character name[8] is ‗\0‘
which indicates a NULL character which is not displayed but is stored as last character of the
string to indicate its end.
Note: Strings are stored as arrays of characters and have a special ‗\0‘ termination character
called NULL appended (attached) to them to signify the end of the string.
Note that if the number of characters including the ‘\0’ is more than the size of the array
the results will be unpredictable. However, if the size of the array is more than the number of
characters the extra spaces after the last ‘\0’ character are kept blank and not referred because
the string ends at ‘\0’. So, always make sure that the size of the array is sufficient for the string.
For example, the above declaration would be wrong if we write

char name [8] = ―I like C‖ ;

The size can be ignored also. In that case the size is considered as that of the number of
characters specified in the declaration.

char name [ ] = ―I like C‖ ;


Introduction to Computers and Programming Lab Manual – Page 185|222
String Input/Output:
The easiest way to input strings is by using the C library function gets (means get string). The gets(
) function reads a string of characters entered at the keyboard until you strike the enter key
(carriage return). The carriage return does not become part of the string; instead a null terminator
‗\0‘ is placed at the end.
For example, in the following program fragment
char str[80] ;
gets (str) ;

and if the user enters

Rafiqul Zaman Khan

and presses the enter key the string variable str has the characters ―Rafiqul Zaman Khan‖ with ‗\0‘
appended at the end but is not displayed.

Similarly, there is an output function puts ( ) which prints or displays the value of the string
variable. Unlike the cout, which stays on the same line after printing puts automatically advances
the output to the next line after displaying it.
puts (str) ;

Example: char name [81] = {―Rafiqul Zaman Khan‖} ;

gets (name) ; /* reads the name */


puts (name) ; /* prints the name */

Built-in String Functions:


Large collections of string processing functions are provided in C through string.h file. So,
include the string.h file in the programs to use these functions. To use the string functions make
sure that the size of the array is sufficient so that the strings are terminated with the ‘\0’
character or the functions will not work properly.

strcat ( string1, string2 ) :

The strcat function concatenates or joins the string1 and string2. A copy of string2 is put
at the end of the string1. Make sure that string1 size is long enough to hold the resulting string
(string1 + string2).
Example: char string1[ 81] = ―abc‖, string2 [ ] = ―def‖ ;

strcat ( string1, string2) ;

Introduction to Computers and Programming Lab Manual – Page 186|222


puts ( string1 ) ; /* outputs ―abcdef‖ which is stored in string1 */

strcpy ( string1, string2 ) :

The strcpy function copies string2 into string1. Again make sure that string1 size is long
enough to hold the resulting string.

Example: char string1 [ 81] , string2 [ ] = ―memory‖ ;


strcpy ( string1, string2 ) ;

puts ( string1 ) ; /* outputs ―memory‖ copied into string1 */


strcmp ( string1, string2 ) :

The strcmp function compares the string1 to string2 and returns an integer value to show
the status of the comparison. A value of 0 indicates that the two strings are identical. A value of
less than 0 shows that string1 is lexicographically (according to alphabetic ordering) less than
string2. A value of greater than 0 shows that string1 is lexicographically (according to alphabetic
ordering) greater than string2.
See example 6

strlen( string1 ) :

The strlen function returns an integer equal to the length of the stored string including
blanks, not including the termination character.

strchr ( string, ch ) :

The strchr function searches string for the first occurrence of ch. This function only tells
whether the string contains ch or not and it will not tell the position of the ch in the string if found.

15.4 Examples:

Example1:- Write a program that prints a string. String can be printed by using various functions
such as printf, puts.

#include <stdio.h>

int main()
{
char array[20] = "Hello World";

printf("%s\n",array);

return 0;
Introduction to Computers and Programming Lab Manual – Page 187|222
}

Example2:-Write a program that input a string we use scanf function.

#include <stdio.h>

int main()
{
char array[100];

printf("Enter a string\n");
scanf("%s", array);

printf("You entered the string %s\n",array);


return 0;
}

Example3:- Write a Program thats Input string containing spaces.


#include <stdio.h>

int main()
{
char a[80];

gets(a);

printf("%s\n", a);

return 0;
}

//Note that scanf can only input single word strings, to receive strings containing spaces use gets
function.

Example4:- Write a Program to Print string using loop.


We print string using for loop by printing individual characters of string.

#include <stdio.h>
#include <string.h>

int main() {
char s[100];

Introduction to Computers and Programming Lab Manual – Page 188|222


int c, l;

gets(s);

l = strlen(s);

for (c = 0; c < l; c++)


printf("%c", s[c]);

return 0;
}

Example5:-Write a program that finds a string length.


#include <stdio.h>
#include <string.h>

int main()
{
char a[100];
int length;

printf("Enter a string to calculate it's length\n");


gets(a);

length = strlen(a);

printf("Length of entered string is = %d\n",length);

return 0;
}

Output:-

Example6:- Write a program to compare two strings using strcmp.


#include <stdio.h>
#include <string.h>

Introduction to Computers and Programming Lab Manual – Page 189|222


int main()
{
char a[100], b[100];

printf("Enter the first string\n");


gets(a);

printf("Enter the second string\n");


gets(b);

if (strcmp(a,b) == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");

return 0;
}

Output:-

Example7:- Write a program to copy a string.


#include <stdio.h>
#include <string.h>

int main()
{
char source[1000], destination[1000];

printf("Input a string\n");
gets(source);

strcpy(destination, source);

printf("Source string: \"%s\"\n", source);


printf("Destination string: \"%s\"\n", destination);

Introduction to Computers and Programming Lab Manual – Page 190|222


return 0;
}

Output:-

Example8:- Write a program that concatinate a string.


#include <stdio.h>
#include <string.h>

int main()
{
char a[1000], b[1000];

printf("Enter the first string\n");


gets(a);

printf("Enter the second string\n");


gets(b);

strcat(a,b);

printf("String obtained on concatenation is %s\n",a);

return 0;
}
Output:

Example9:- Write a program that prints string in reverse form.

Introduction to Computers and Programming Lab Manual – Page 191|222


#include <stdio.h>
#include <string.h>

int main()
{
char arr[100];

printf("Enter a string to reverse\n");


gets(arr);

strrev(arr);

printf("Reverse of entered string is \n%s\n",arr);

return 0;
}

Output:-

15.5 Exercises for lab


Exercise -1) Write a program that reads a string and print the number of vowels letters.

Exercise -2) Write a Program number that reads a string and print upper case and number of lower
case letters.
Exercise -3) Write a program that reads a string and print the string with the first letter
capitalized and the remaining in lower case.

15.6 Home Work


1) Write a program that reads a string and print the reverse of that string:
e.g. User Enter string----------This is a cat
Output: - tac a si siht
2) Write a program that reads a string and print the string‘s words in reverse order:
e.g. User Enter string----------This is a cat

Introduction to Computers and Programming Lab Manual – Page 192|222


Output: - cat a is This

Hints: - Use two arrays of same size. One is used to take value from user and other is used to store
reverse string.

Introduction to Computers and Programming Lab Manual – Page 193|222


Lab # 16

File handling in C

16.1 Objective:
Often it is not enough to just display the data on the screen. This is because if the data is large,
only a limited amount of it can be stored in memory and only a limited amount of it can be displayed
on the screen. It would be inappropriate to store this data in memory for one more reason. Memory
is volatile and its contents would be lost once the program is terminated. So if we need the same
data again it would have to be either entered through the keyboard again or would have to be
regenerated programmatically.

Obviously both these operations would be tedious. At such times it becomes necessary to store the
data in a manner that can be later retrieved and displayed either in part or in whole. This medium is
usually a ‗file‘ on the disk

16.2 Scope:
The student should know the following:
8. To create, read, write and update the files
9. Copy the file, writing into file from consoles etc

16.3 Useful Concepts:

How data is organized:


1. All data stored on the disk is in binary form.
2. How this binary data is stored on the disk varies from one OS to another.
3. However, this does not affect the C programmer since he has to use only the library
functions written for the particular OS to be able to perform input/output.
4. It is the compiler vendor‘s responsibility to correctly implement these library functions by
taking the help of OS.
5. Following figure illustrates the concept,

Introduction to Computers and Programming Lab Manual – Page 194|222


File Operations:

There are different operations that can be carried out on a file. These are:
1. Creation of a new file
2. Opening an existing file
3. Reading from a file
4. Writing to a file
5. Moving to a specific location in a file (seeking)
6. Closing a file

Let us now write a program to read a file and display its contents on the screen. We will first list
the program and show what it does, and then dissect it line by line.

File Opening:Modes:

Example -1:-Write a program that reads the content of a file.

#include<stdio.h>

#include<conio.h>
main( )
{

Introduction to Computers and Programming Lab Manual – Page 195|222


FILE *fp;

char ch;
fp = fopen ( "printingHistogram.c", "r" );
while( 1 )

{
ch = fgetc ( fp );

if ( ch = = EOF )
break;

printf ( "%c", ch );

fclose ( fp );
getche();

Output:-

Line by Line Program Illustration


1. To open the file we have called the function fopen ( ).
2. open( )performs three important tasks when you open the file in ―r‖ mode:
a. Firstly it searches on the disk the file to be opened.
b. Then it loads the file from the disk into a place in memory called buffer.
c. It sets up a character pointer that point to the first character of the buffer.

Introduction to Computers and Programming Lab Manual – Page 196|222


3. To be able to successfully read from a file information like mode of opening, size of file,
place in the file from where the next read operation would be performed, etc. has to be
maintained.

15.3.4 Reading from the File:


1. Since all this information is inter-related, all of it is gathered together by fopen() in a
structure called FILE.
2. fopen( )returns the address of this structure, which we have collected in the structure
pointer called fp. We have declared fp as FILE *fp ;
3. The FILE structure has been defined in the header file ―stdio.h‖
4. Once the file has been opened for reading using fopen( ), file‘s contents are brought into
buffer (partly or wholly) and a pointer is set up that points to the first character in the
buffer. This pointer is one of the elements of the structure to which fp is pointing.
5. To read the file‘s contents from memory there exists a function called fgetc( ). This has
been used in our program as, ch = fgetc ( fp ) ;

fgetc() function

fgetc( )reads the character from the current pointer position, advances the pointer position so
that it now points to the next character, and returns the character that is read, which we collected
in the variable ch. Note that once the file has been opened, we no longer refer to the file by its
name, but through the file pointer fp.

End of file:-
1. We have used the function fgetc( )within an indefinite while loop.
2. There has to be a way to break out of this while. When shall we break out... the moment we
reach the end of file.
3. But what is end of file? A special character, whose ASCII value is 26, signifies end of file.
4. This character is inserted beyond the last character in the file, when it is created.
5. In our program we go on reading each character from the file till end of file is not met. As
each character is read we display it on the screen. Once out of the loop, we close the file.

Trouble in opening File:


1. Crux of the matter is that it is important for any program that accesses disk files to check
whether a file has been opened successfully before trying to read or write to the file.
2. If the file opening fails due to any of the several reasons mentioned above, the fopen(
)function returns a value NULL.

Introduction to Computers and Programming Lab Manual – Page 197|222


Example -2:- Write a Program that open a file.

#include <stdio.h>
main( )
{

FILE *fp;
fp = fopen ( "PR1.C", "r" );

if ( fp == NULL )
{

puts ( "cannot open file" );

exit( );

}
}

Output:

Cannot open the file

Closing File:
1. When we have finished reading from the file, we need to close it.
2. This is done using the function fclose( )through the statement,
a. fclose ( fp ) ;
3. Once we close the file we can no longer read from it using getc( ) unless we reopen the file.
4. Note that to close the file we don‘t use the filename but the file pointer fp.
5. On closing the file the buffer associated with the file is removed from memory.
6. When we attempt to write characters into this file using fputc( ) the characters would get
written to the buffer.

7. When we close this file using fclose( ) three operations would be performed:

8. The characters in the buffer would be written to the file on the disk.

9. At the end of file a character with ASCII value 26 would get written.

10. The buffer would be eliminated from memory

Example -3:- Write a Program to create a file and write some data the file.

#include<stdio.h>
Introduction to Computers and Programming Lab Manual – Page 198|222
#include<conio.h>

#include<string.h>
Void main( )
{

FILE *fp;
char stuff[25];

int index;
fp = fopen("TENLINES.TXT","w"); /* open for writing */

strcpy(stuff,"This is an example line.");

for (index = 1; index <= 10; index++)

fprintf(fp,"%s Line number %d\n", stuff, index);


fclose(fp); /* close the file before ending program */

Output:

Example -4:- Write a Program that counts chars, spaces, tabs and new lines in a file.

Introduction to Computers and Programming Lab Manual – Page 199|222


Output:-

Introduction to Computers and Programming Lab Manual – Page 200|222


fgetc() and fputc() functions ---- Copying Files:
1. The function fgetc( ) which reads characters from a file.
2. Its counterpart is a function called fputc( )which writes characters to a file.
3. As a practical use of these character I/O functions we can copy the contents of one file
into another, as demonstrated in the program on the next slide

Example -5:- Write a Program that Copy File.

#include <stdio.h>
#include <conio.h>

#include <stdlib.h>

main( )

{
FILE *fs, *ft ;

char ch ;
fs = fopen ( "Array1.c", "r" ) ;
if ( fs == NULL )

puts ( "Cannot open source file" ) ;

exit(0) ;

}
ft = fopen ( "array2.c", "w" ) ;
if ( ft == NULL )

Introduction to Computers and Programming Lab Manual – Page 201|222


{

puts ( "Cannot open target file" ) ;


fclose ( fs ) ;
exit(0) ;

}
while ( 1 )

{
ch = fgetc ( fs ) ;

if ( ch == EOF )

break ;

else
fputc ( ch, ft ) ;

fclose ( fs ) ;

fclose ( ft ) ;
getche();

Output:
It copies the contents of array1.c to array2.c, the file is open below with the contents of array1.c

Introduction to Computers and Programming Lab Manual – Page 202|222


String (Line) I/O Files:
Reading or writing strings of characters from and to files is as easy as reading and writing
individual characters. Program below, writes strings to a file using the function fputs( ).

Example -6:- Write a Program that receives strings from keyboard and writes them to file.
#include<conio.h>

#include<string.h>

main( )
{

FILE *fp ;
char s[80] ;

fp = fopen ( "TENLINES.TXT", "w" ) ;


if ( fp == NULL )

{
puts ( "Cannot open file" ) ;

exit(0) ;
Introduction to Computers and Programming Lab Manual – Page 203|222
}

printf ( "\nEnter a few lines of text:\n" ) ;


while ( strlen ( gets ( s ) ) > 0 )
{

fputs ( s, fp ) ;
fputs ( "\n", fp ) ;

}
fclose ( fp ) ;

Output:

 The function fgets( )takes three arguments.


 The first is the address where the string is stored.
 The second is the maximum length of the string.
 The third argument, as usual, is the pointer to the structure FILE.

Introduction to Computers and Programming Lab Manual – Page 204|222


Example -7:- Write a Program that record to a file using structures.

Important Points
 The key to this program is the function
fprintf(), which writes the values in the
structure variable to the file.

 This function is similar to printf( ),


except that a FILE pointer is included as
the first argument.

 As in printf( ), we can format the data in


a variety of ways, by using fprintf( ).

 In fact all the format conventions of


printf() function work with fprintf( )as
well.

} //end of main

Output:

Introduction to Computers and Programming Lab Manual – Page 205|222


Introduction to Computers and Programming Lab Manual – Page 206|222
Lab # 17

Graphics in C

17.1 Objective:
To start with graphics programming, Turbo C is a good choice. Even though DOS has its own
limitations, it is having a large number of useful functions and is easy to program.
17.2 Scope:
To implement graphics algorithms,
To give graphical display of statistics,

To view signals from any source, we can use C graphics.

Draw basic geometric shapes.


17.3 Useful Concepts
1. Graphics.h Header File
2. Graphics.lib library file
3. Graphics driver (BGI file)
4. At least 640×480 VGA monitor
5. Header File : graphics.h
6. All Graphical Functions are Included in Graphics.h
7. After Including graphics.h Header File [ You can get access graphical functions ]
8. You must Know Following Things before Learning Turbo Graphics
9. InitGraph : Initializes the graphics system.
10. In C Program execution starts with main() similarly Graphics Environment Starts with this
function.
11. initgraph() initializes the graphics system by loading a graphics driver from disk then
putting the system into graphics mode
12. As this is Our first topic Under Graphics so it is better not to go in details of Parameters.

Simple Program using Graphic:


Example -1:- Write a program using graphics.

#include<graphics.h>
#include<conio.h>

void main()
Introduction to Computers and Programming Lab Manual – Page 207|222
{

int gd = DETECT, gm;


initgraph(&gd, &gm, "c:\\tc\\bgi");
///Your Code goes here

getch();
closegraph();

}
Output:

Firstly let me tell you what the output of this program is.
1. This program initializes graphics mode and then closes it after a key is pressed.

2. To begin with we have declared two variables of int type gd and gm for graphics driver and
graphics mode respectively.

3. DETECT is a macro defined in "graphics.h" header file.

4. Then we have passed three arguments to initgraph function 1 st is the address of gd, 2 nd is
the address of gm and 3rd is the path where your BGI files are present ( you have to adjust
this accordingly where you turbo compiler is installed).

5. getch helps us to wait until a key is pressed, closegraph function closes the graphics mode
and finally return statement returns a value 0 to main indicating successful execution of
your program

6. After you have understood initgraph function then you can use functions to draw shapes
such as circle, line , rectangle etc, then you can learn how to change colors and fonts using
suitable functions, then you can go for functions such as getimage, putimage etc for doing
animation.

Program: Printing text in Graphics using Outtestxy Function

Example -2:- Write a program that prints text in Graphics using Outtestxy function.
#include<graphics.h>

#include<stdio.h>

int main(void)
{

int gdriver = DETECT, gmode;

Introduction to Computers and Programming Lab Manual – Page 208|222


initgraph(&gdriver, &gmode, "c:\\tc\\bgi");

int x = 200, y = 200;


outtextxy(x, y, "Hello World");
closegraph();

}
Output:

outtextxy(x,y,"Hello World");

This Function is Similar to Printf Statement.


Printf Prints Text on Screen in ―Text Mode‖ while outtextxy() function Prints Text onto Screen in
―Graphics Mode―.
This Function Accepts 3 Parameters.

Syntax:
outtextxy(x,y,"Hello World");

Program: How to Draw a Circle:

Example -3:- Write a program that draws a circle.

Introduction to Computers and Programming Lab Manual – Page 209|222


#include<graphics.h>

#include<conio.h>
void main()
{

int gd=DETECT, gm;


initgraph(&gd, &gm, "c:\\turboc3\\bgi " );

circle(200,100,150);
getch();

closegraph();

Output:

More detail on Syntax


1. InitGraph: Initializes the graphics system.

2. Declaration: void far initgraph(int far *graphdriver, int far *graphmode, char far
*pathtodriver);

3. Remarks: To start the graphics system, you must first call initgraph.

4. initgraph initializes the graphics system by loading a graphics driver from disk (or validating
a registered driver) then putting the system into graphics mode.

5. initgraph also resets all graphics settings (color, palette, current position, viewport, etc.) to
their defaults, then resets graphresult to 0.

Program --- Draw a Rectangle:


Introduction to Computers and Programming Lab Manual – Page 210|222
Example -4:- Write a program that draws a rectangle.

#include<stdio.h>
#include<conio.h>
#include<graphics.h>

void main()
{

int gd = DETECT, gm;


initgraph(&gd, &gm, "c:\\tc\\bgi");

line(300, 100, 200, 200); // (from_x,from_y, to_x,to_y)

line(300, 100, 400, 200);

line(200, 200, 400, 200);


getch();

closegraph();

Output:

Program: Setting Styles and More:


Example -5:-write a program to illustrate how to use BARS which are used for visual statistics.

#include<graphics.h>
main() {

int gd=DETECT,gm,maxx,maxy,x,y,button;

Introduction to Computers and Programming Lab Manual – Page 211|222


initgraph(&gd,&gm,"");

line(80,150,200,150);
line(80,150,80,50);
settextstyle(1,HORIZ_DIR,1);

outtextxy(100,153,"<-X axis");
settextstyle(1,VERT_DIR,1);

outtextxy(60,50,"<-Y axis");
bar(100,100,120,150);

bar(130,120,150,150);

getch();

closegraph();
}

Output:

Program: Draw Op-amp using Graphics Function:


Example -6:-Write a program that draw Op-amp using graphics function.
#include<stdio.h>

#include<conio.h>

#include<graphics.h>
void main() {

int gd = DETECT, gm;

Introduction to Computers and Programming Lab Manual – Page 212|222


initgraph(&gd, &gm, "c:\\tc\\bgi");

line(50, 125, 100, 125); //Horizontal Line -VE Terminal


line(50, 175, 100, 175); //Horizontal Line +VE Terminal

line(100, 100, 100, 200); //Vertical Line


line(100, 100, 150, 150); //Top to Bottom Slant Line

line(150, 150, 100, 200); //Bottom to Top slant Line


line(125, 100, 125, 125); //Vertical Line +VCC

line(125, 175, 125, 200); //Vertical Line -VCC

line(150, 150, 200, 150); //Horizontal line

getch();
closegraph();

Output:

Important Functions:

Clearing the graphics window…

cleardevice();
Delay the program, so that users can see what is happening…sending in the number of msec

delay(milliseconds);

Introduction to Computers and Programming Lab Manual – Page 213|222


Wait for a keyboard hit:

getch();or,kbhit();

Important Function --- Draw Lines:

1) Set Drawing Color (for lines and edges)

2) (colors typically range from 0-15; 0 is usually black and 15 is white)

3) setcolor(color);

4) Set Background Color (usually for text)

5) setbkcolor(color);

6) Set Fill Style and Color (for interiors)

7) Pattern 0-12, 0 = empty, 1 = solid

8) setfillstyle(pattern, color)

9) Set Line Style and Thickness

10) Style: 0 = solid, 1 = dotted, 3 = dashed

11) Thickness is the width in terms of pixels

12) setlinestyle(style, pattern, thickness)

Important Function --- Draw Areas:

1. Drawing absolute (from one coordinate to another)

2. linerel(from_x, from_y,

3. Drawing a Circle

4. lGiven center and radius as whole numbers

5. circle (center_x, center_y, radius);

6. lDrawing a filled Rectangle

7. (given upper left and lower right corners)

Introduction to Computers and Programming Lab Manual – Page 214|222


8. bar(ul_x, ul_y, lr_x,lr_y);

9. lDrawing an unfilled Rectangle

10. (given upper left and lower right corners)

11. rectangle(ul_x, ul_y, lr_x, lr_y); to_x, to_y);

Important Function --- How Text looks:

1. Text Formatting

2. Set the justification

3. Horizontal: (0 = left, 1 = center, 2= right)

4. Vertical: (0 = bottom, 1 = center, 2 = top)

5. settextjustify(horizontal, vertical)

6. Set the text style

7. Font: (0-11)

8. Direction: 0 = left to right direction

9. Character Size: 0 = normal, 6 is really big!

10. settextstyle(font,direction, character size)

BLACK: 0
BLUE: 1
GREEN: 2
CYAN: 3
RED: 4
MAGENTA: 5
BROWN: 6
LIGHTGRAY: 7
DARKGRAY: 8
LIGHTBLUE: 9
LIGHTGREEN: 10
LIGHTCYAN: 11
LIGHTRED: 12
LIGHTMAGENTA:13
YELLOW: 14
WHITE: 15
Introduction to Computers and Programming Lab Manual – Page 215|222
Important Function --- Messages:
1. Text Output
2. Set Text color (index ranges 0-15)
3. setcolor(index);
4. Output a message on the graphics window at the current position
5. outtext(―messages on graphics window‖);
6. Output a message on the graphics window at the given x,y coordinate
7. outtextxy(x,y,‖message‖);

Important Function --- Mouse Inputs:


1. Has there been a mouse click?
2. Right Click is 513
3. Left Click is 516Middle Click is 519 (the wheel…)
4. answer = ismouseclick(kind)
5. Clear the mouse click
6. (if you don‘t do this you can‘t get the next mouse click!)
7. clearmouseclick(kind);
8. What was the coordinate when the mouse click happens…
9. x = mousex(); y = mousey();

Program: Moving on (concentric circles)

Example -7:-Write a program that moves on concentric circle.

#include <graphics.h>
int main()

int gd = DETECT, gm;

int x = 320, y = 240, radius;

initgraph(&gd, &gm, "C:\\TC\\BGI");


for ( radius = 25; radius <= 125 ; radius = radius + 20)

circle(x, y, radius);

getch();
closegraph();

return 0;
}

Introduction to Computers and Programming Lab Manual – Page 216|222


Output:

Basic Shapes and Colours:

Example -8:- Write a program that implements basic shapes and colours.
#include<graphics.h>

#include<conio.h>

void main()

int gd=DETECT, gm;

int poly[12]={350,450, 350,410, 430,400, 350,350, 300,430, 350,450 };


initgraph(&gd, &gm, "");

circle(100,100,50);
outtextxy(75,170, "Circle"); rectangle(200,50,350,150);

outtextxy(240, 170, "Rectangle");


ellipse(500, 100,0,360, 100,50);

outtextxy(480, 170, "Ellipse");

line(100,250,540,250);
outtextxy(300,260,"Line");

sector(150, 400, 30, 300, 100,50);


outtextxy(120, 460, "Sector");

drawpoly(6, poly);

Introduction to Computers and Programming Lab Manual – Page 217|222


outtextxy(340, 460, "Polygon");

getch();
closegraph();
}

Output:

Program: Moving Car:

Example -9:- Write a program that implements the code of moving car.

#include <graphics.h>

#include <dos.h>
int main()

{
int i, j = 0, gd = DETECT, gm;

initgraph(&gd,&gm,"C:\\TC\\BGI");
settextstyle(DEFAULT_FONT,HORIZ_DIR,2);

outtextxy(25,240,"Press any key to view the moving car");

getch();
for( i = 0 ; i <= 420 ; i = i + 10, j++ )

{
rectangle(50+i,275,150+i,400);

rectangle(150+i,350,200+i,400);
Introduction to Computers and Programming Lab Manual – Page 218|222
circle(75+i,410,10);

circle(175+i,410,10);
setcolor(j);
delay(100);

if( i == 420 )
break;

if ( j == 15 )
j = 2;

cleardevice(); // clear screen

getch();
closegraph();

return 0;

Output:

Introduction to Computers and Programming Lab Manual – Page 219|222


Some Graphic Effects using Random Numbers:
Introduction to Computers and Programming Lab Manual – Page 220|222
17.4 Examples
Example -10:-Write a program that calculates random numbers using some graphics.
#include "graphics.h"

#include "conio.h"
#include "stdlib.h"

void main()
{
int gd,gm;

gd=DETECT;

initgraph(&gd, &gm, "");

setcolor(3);

setfillstyle(SOLID_FILL,RED);

bar(50, 50, 590, 430);


setfillstyle(1, 14);

bar(100, 100, 540, 380);

while(!kbhit())
{

putpixel(random(439)+101, random(279)+101,random(16));

setcolor(random(16));

circle(320,240,random(100));

}
getch();

closegraph();
}

Introduction to Computers and Programming Lab Manual – Page 221|222


Introduction to Computers and Programming Lab Manual – Page 222|222

You might also like