2. Introduction
An array is a sequence of homogenous elements
It holds multiple values of same type.
Each block of array is stored consecutively in
memory.
SYNTAX:
data-type name[size];
Example:
int a[6];
Arrays always start with 0 and end with [size-1]
3. One dimensional Array
An array is a data structure consisting of a collection of elements (values
or variables), each identified by at least one array index
SYNTAX:
data-type name[index];
EXAMPLE:
int num[10];
4. Initialization
int num[6]={2,4,6,7,8,12};
Individual elements can also be initialize as:
num[0]=2;
num[1]=4;
num[2]=6;
num[3]=7;
num[4]=8;
num[5]=12;
A specific element in an array is accessed by an index.
6. Reading Data from User
for loop is used to read data from the user.
7. Arrays: Example
#include<stdio.h>
#include<conio.h>
int main()
{
int age[3];
age[0] = 25;
age[1] = 30;
age[2] = 35;
printf("Ages are ");
for (int j=0; j<3; j++)
printf("%dn",age[j]);
getch();
}
#include<stdio.h>
#include<conio.h>
int main()
{
int age[3];
for (int i = 0; i<3; i++) {
printf("Enter ages n");
scanf("%d",&age[i]);}
printf("Ages are ");
for (int j=0; j<3; j++)
printf("%d n",age[j]);
getch();
}
8. Initializing Arrays in Declarations
• Possible to declare the size & initialize
• Possible to omit size at declaration
– Compiler figures out size of array
int results [5] = {14, 6, 23, 8, 12 }
float prices [ ] = { 2.41, 85.06, 19.95, 3.91 }
9. Arrays Initialization: Example
#include<stdio.h>
#include<conio.h>
int main()
{
int age[3] = {25, 30,
35};
for (int j=0; j<3; j++)
printf("%dn",age[j]);
getch();
}
#include<stdio.h>
#include<conio.h>
int main()
{
int age[ ] = {25, 30,
35};
for (int j=0; j<3; j++)
printf("%dn",age[j]);
getch();
}
Empty brackets
can take any
size
10. Arrays: Class
Exercise
Write a C program
using arrays that
accepts five (05)
integers and then
prints them in
reverse order.
#include<stdio.h>
#include<conio.h>
int main()
{
int order[5];
printf("Enter numbers n");
for(int i=0; i<=4; i++)
scanf("%d ", &order[i]);
for (int j=4; j>=0; j--)
printf("%dn", order[j]);
getch();
}
11. Class work
WAP to read 10 numbers from the user and display
them.
WAP to read 20 numbers from the user and find out
the highest number.
12. Advantage of Array
Huge amount of data can be stored under single
variable name.
Searching of data item is faster.
2 dimension arrays are used to represent the
matrices.
It is helpful in implementing other data structure
like linked list, queue,stack.
13. 2-Dimensional Arrays
• A collection of a fixed number of components
arranged in two dimensions
– All components are of the same type
• The syntax for declaring a two-dimensional
array is:
dataType arrayName[intexp1][intexp2];
where intexp1 and intexp2 are expressions
yielding positive integer values; e.g., double
sales[10][5]
14. 2-Dimensional Arrays
• The two expressions intexp1 and intexp2 specify
the number of rows and the number of columns,
respectively, in the array
• Two-dimensional arrays are sometimes called
matrices or tables
16. 2-Dimensional Arrays
The syntax to access a component of a two-
dimensional array is:
arrayName[indexexp1][indexexp2]
where indexexp1 and indexexp2 are expressions
yielding nonnegative integer values
indexexp1 specifies the row position and
indexexp2 specifies the column position
18. 2-Dimensional Arrays Accessing
Accessing all of the elements of a two-dimensional array
requires two loops: one for the row, and one for the column.
Since two-dimensional arrays are typically accessed row by
row, generally the row index is used as the outer loop.
for (int nRow = 0; nRow < nNumRows; nRow++)
for (int nCol = 0; nCol < nNumCols; nCol++)
printf(“%d”,anArray[nRow][nCol]);
19. 2 DIM. Arrays: Example
#include<stdio.h>
#include<conio.h>
int main()
{
double sales[2][3];
sales[0][0] = 2.3;
sales[0][1] = 3.5;
sales[0][2] = 4.2;
sales[1][0] = 5.6;
sales[1][1] = 6.7;
sales[1][2] = 7.8;
//complete program
by //printing the
values which look
like this:
20. 2-Dimensional Arrays Initialization
Like one-dimensional arrays
Two-dimensional arrays can be initialized when
they are declared
To initialize a two-dimensional array when it is
declared
1) Elements of each row are enclosed within braces and
separated by commas
2) All rows are enclosed within braces
3) For number arrays, if all components of a row are not
specified, the unspecified components are initialized to
zero
22. 2 DIM. Arrays: Example
#include<stdio.h>
#include<conio.h>
int main()
{
int matrix[2][2] = {
{2,3,}, //row0
{5,7} //row1
};
printf("n Resultant n");
for(int i = 0; i < 2; i++)
{
for(int j = 0; j < 2; j++)
{
printf(" %d", matrix[i][j]);
}
printf("n"); }
getch();
}
23. 2 DIM. Arrays: Class Exercise
Write a C program using 2 DIM. arrays that gets 2x2
matrix input from the user and then prints the
resultant matrix. The output should look like this:
24. 2 DIM. Arrays: Exercise Solution
#include<stdio.h>
#include<conio.h>
int main()
{
int matrix[2][2];
for(int i = 0; i < 2; i++)
{
for(int j = 0; j < 2; j++){
printf("Enter values for [%d %d] ",i,j);
scanf("%d",& matrix[i][j]);
printf("n");}}
printf("resultant:n");
for(int i = 0; i < 2; i++)
{
for(int j = 0; j < 2; j++)
{
printf(" %d " ,matrix[i][j]);
}
printf("n");
}
getch();
}
25. 2 DIM. Arrays: Class Exercise
Write a C program
using 2 DIM. arrays
that gets two 2x2
matrices as an input
from the user and
then prints the sum
of entered matrices.
The output should
look like this: