SlideShare a Scribd company logo
1 of 30
MULTI-DIMENSIONAL
ARRAY
By Smit Parikh
Multi-Dimensional Arrays
 Multidimensional arrays are derived from the
basic or built-in data types of the C language.
 Two-dimensional arrays are understood as rows
and columns with applications including two-
dimensional tables, parallel vectors, and two-
dimensional matrices.
 Mostly Two-dimensional array are used in
Multi-dimensional array.
Arrays of Greater
DimensionOne-dimensional arrays are linear containers.
Multi-dimensional Arrays
Two-Dimensional
Three-dimensional
[0] [1] [2]
[0] [1] [2] [3]
[0]
[1]
[2]
[0]
[0]
[1]
[1]
[2]
[2]
[3]
[0] [1] [2] [3] [4]
TWO DIMENSIONAL
ARRAY
CONTENT
 Introduction to two dimensional array
 Declaration
 Initialization
 Input and output of a 2d array
 Storage allocation
Two - Dimensional Arrays
 What is a Two-dimensional array?
B =
51, 52, 53
54, 55, 56
Algebraic notation
Col 1 Col 2 Col 3
Row 1
Row 2
Int b[2][3] = {(51, 52, 53),(54, 55, 56)};
Array type Array name
Array dimension = 2
Two rows
Three columns
First row second row
C notation
7
Indexes in 2D arrays
 Assume that the two dimensional array called val is
declared and looks like the following:
 To access the cell containing 6, we reference val[1]
[3], that is, row 1, column 3.
val Col 0 Col 1 Col 2 Col 3
Row 0 8 16 9 52
Row 1 3 15 27 6
Row 2 14 25 2 10
DECLARATION
 How to declare a multidimensional array?
int b[2][3];
the name of the array to be b
the type of the array elements to be int
the dimension to be 2 (two pairs of brackets [])
the number of elements or size to be 2*3 = 6
Declaration Statement
 How to initialize a Two-Dimensional array?
 Initialized directly in the declaration statement
 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.
INITIALIZATION
Input of Two-Dimensional Arrays
 Data may be input into two-dimensional
arrays using nested for loops interactively
or with data files.
 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.
Output of Two-Dimensional Arrays
 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.
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;
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 :-
Enter elements in array:
1
2
3
4
5
6
7
8
9
123
456
789
Storage Allocation
In storage allocation of array contagious memory is
allocated to all the array elements.
EXAMPLES BASED ON
TWO-DIMENSIONAL
ARRAY
A program to add two matrix
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]);
}
}
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:-
Enter elements in array:-
1 3
2 4
3 5
4 6
5 7
6 8
7 9
8 2 4 6
9 81012
1 141618
2
A program to input a matrix and
print its transpose.
#include<stdio.h>
#include<conio.h>
void main()
{
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:-
Enter elements in array:
1
2
3
4
5
6
7
8
9
147
258
369
A program to multiply two matrix
entered by the user and print it.
#include<stdio.h>
#include<conio.h>
void main()
{
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(i=0 ; i<3 ; i++)
{
for(j=0 ; j<3 ; j++)
{
scanf(“%d”,&b[i][j]);
}
}
for(i=0 ; i<3 ; i++)
{
for(j=0 ; j<3 ; j++)
c[i][j]=0;
{
for(k=0 ; k<2 ; k++)
{
c[i][j]=c[i][j]+a[i][k]*b[k][j]
printf(“%3d”,c[i][j]);
}
}
printf(“n”);
}
getch();
}
OUTPUT:-
Enter elements in array:-
1 3
2 4
3 5
4 6
5 7
6 8
7 9
8 30 66 102
9 36 81 121
1 42 96 150
2
THANK YOU

More Related Content

What's hot

Lec 17 heap data structure
Lec 17 heap data structureLec 17 heap data structure
Lec 17 heap data structure
Sajid Marwat
 

What's hot (20)

Strings in C
Strings in CStrings in C
Strings in C
 
Python tuple
Python   tuplePython   tuple
Python tuple
 
Lec 17 heap data structure
Lec 17 heap data structureLec 17 heap data structure
Lec 17 heap data structure
 
Java(Polymorphism)
Java(Polymorphism)Java(Polymorphism)
Java(Polymorphism)
 
sparse matrix in data structure
sparse matrix in data structuresparse matrix in data structure
sparse matrix in data structure
 
Data types in python
Data types in pythonData types in python
Data types in python
 
Arrays in python
Arrays in pythonArrays in python
Arrays in python
 
One Dimensional Array
One Dimensional Array One Dimensional Array
One Dimensional Array
 
Python Modules
Python ModulesPython Modules
Python Modules
 
Queue in Data Structure
Queue in Data Structure Queue in Data Structure
Queue in Data Structure
 
Queue ppt
Queue pptQueue ppt
Queue ppt
 
Arrays
ArraysArrays
Arrays
 
Python programming : Arrays
Python programming : ArraysPython programming : Arrays
Python programming : Arrays
 
Array in c programming
Array in c programmingArray in c programming
Array in c programming
 
C++ Arrays
C++ ArraysC++ Arrays
C++ Arrays
 
Arrays and Strings
Arrays and Strings Arrays and Strings
Arrays and Strings
 
stack & queue
stack & queuestack & queue
stack & queue
 
Function overloading(c++)
Function overloading(c++)Function overloading(c++)
Function overloading(c++)
 
Method overriding
Method overridingMethod overriding
Method overriding
 
Arrays In Python | Python Array Operations | Edureka
Arrays In Python | Python Array Operations | EdurekaArrays In Python | Python Array Operations | Edureka
Arrays In Python | Python Array Operations | Edureka
 

Similar to Multidimensional array in C

Multi dimensional arrays
Multi dimensional arraysMulti dimensional arrays
Multi dimensional arrays
Aseelhalees
 
array-191103180006.pdf
array-191103180006.pdfarray-191103180006.pdf
array-191103180006.pdf
HEMAHEMS5
 

Similar to Multidimensional array in C (20)

Unit 3
Unit 3 Unit 3
Unit 3
 
Array,MULTI ARRAY, IN C
Array,MULTI ARRAY, IN CArray,MULTI ARRAY, IN C
Array,MULTI ARRAY, IN C
 
CP Handout#9
CP Handout#9CP Handout#9
CP Handout#9
 
C Language Lecture 10
C Language Lecture 10C Language Lecture 10
C Language Lecture 10
 
C Language Lecture 11
C Language Lecture  11C Language Lecture  11
C Language Lecture 11
 
Ch5 array nota
Ch5 array notaCh5 array nota
Ch5 array nota
 
Arrays
ArraysArrays
Arrays
 
C (PPS)Programming for problem solving.pptx
C (PPS)Programming for problem solving.pptxC (PPS)Programming for problem solving.pptx
C (PPS)Programming for problem solving.pptx
 
Programming Fundamentals Arrays and Strings
Programming Fundamentals   Arrays and Strings Programming Fundamentals   Arrays and Strings
Programming Fundamentals Arrays and Strings
 
SP-First-Lecture.ppt
SP-First-Lecture.pptSP-First-Lecture.ppt
SP-First-Lecture.ppt
 
arrays
arraysarrays
arrays
 
array2d.ppt
array2d.pptarray2d.ppt
array2d.ppt
 
Two Dimentional Array
Two Dimentional ArrayTwo Dimentional Array
Two Dimentional Array
 
Unit 3
Unit 3 Unit 3
Unit 3
 
Multi dimensional arrays
Multi dimensional arraysMulti dimensional arrays
Multi dimensional arrays
 
array-191103180006.pdf
array-191103180006.pdfarray-191103180006.pdf
array-191103180006.pdf
 
Arrays
ArraysArrays
Arrays
 
C Arrays.ppt
C Arrays.pptC Arrays.ppt
C Arrays.ppt
 
Array in C full basic explanation
Array in C full basic explanationArray in C full basic explanation
Array in C full basic explanation
 
A quick introduction to R
A quick introduction to RA quick introduction to R
A quick introduction to R
 

Recently uploaded

21P35A0312 Internship eccccccReport.docx
21P35A0312 Internship eccccccReport.docx21P35A0312 Internship eccccccReport.docx
21P35A0312 Internship eccccccReport.docx
rahulmanepalli02
 
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdfALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
Madan Karki
 
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Lovely Professional University
 
Seizure stage detection of epileptic seizure using convolutional neural networks
Seizure stage detection of epileptic seizure using convolutional neural networksSeizure stage detection of epileptic seizure using convolutional neural networks
Seizure stage detection of epileptic seizure using convolutional neural networks
IJECEIAES
 

Recently uploaded (20)

Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
 
Introduction to Artificial Intelligence and History of AI
Introduction to Artificial Intelligence and History of AIIntroduction to Artificial Intelligence and History of AI
Introduction to Artificial Intelligence and History of AI
 
Autodesk Construction Cloud (Autodesk Build).pptx
Autodesk Construction Cloud (Autodesk Build).pptxAutodesk Construction Cloud (Autodesk Build).pptx
Autodesk Construction Cloud (Autodesk Build).pptx
 
Linux Systems Programming: Semaphores, Shared Memory, and Message Queues
Linux Systems Programming: Semaphores, Shared Memory, and Message QueuesLinux Systems Programming: Semaphores, Shared Memory, and Message Queues
Linux Systems Programming: Semaphores, Shared Memory, and Message Queues
 
Interfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdfInterfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdf
 
21P35A0312 Internship eccccccReport.docx
21P35A0312 Internship eccccccReport.docx21P35A0312 Internship eccccccReport.docx
21P35A0312 Internship eccccccReport.docx
 
Multivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptxMultivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptx
 
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
 
5G and 6G refer to generations of mobile network technology, each representin...
5G and 6G refer to generations of mobile network technology, each representin...5G and 6G refer to generations of mobile network technology, each representin...
5G and 6G refer to generations of mobile network technology, each representin...
 
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
 
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdfInvolute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
 
Electrical shop management system project report.pdf
Electrical shop management system project report.pdfElectrical shop management system project report.pdf
Electrical shop management system project report.pdf
 
Introduction to Arduino Programming: Features of Arduino
Introduction to Arduino Programming: Features of ArduinoIntroduction to Arduino Programming: Features of Arduino
Introduction to Arduino Programming: Features of Arduino
 
Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2
 
Insurance management system project report.pdf
Insurance management system project report.pdfInsurance management system project report.pdf
Insurance management system project report.pdf
 
SLIDESHARE PPT-DECISION MAKING METHODS.pptx
SLIDESHARE PPT-DECISION MAKING METHODS.pptxSLIDESHARE PPT-DECISION MAKING METHODS.pptx
SLIDESHARE PPT-DECISION MAKING METHODS.pptx
 
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdfALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
 
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
 
Seizure stage detection of epileptic seizure using convolutional neural networks
Seizure stage detection of epileptic seizure using convolutional neural networksSeizure stage detection of epileptic seizure using convolutional neural networks
Seizure stage detection of epileptic seizure using convolutional neural networks
 

Multidimensional array in C

  • 2. Multi-Dimensional Arrays  Multidimensional arrays are derived from the basic or built-in data types of the C language.  Two-dimensional arrays are understood as rows and columns with applications including two- dimensional tables, parallel vectors, and two- dimensional matrices.  Mostly Two-dimensional array are used in Multi-dimensional array.
  • 3. Arrays of Greater DimensionOne-dimensional arrays are linear containers. Multi-dimensional Arrays Two-Dimensional Three-dimensional [0] [1] [2] [0] [1] [2] [3] [0] [1] [2] [0] [0] [1] [1] [2] [2] [3] [0] [1] [2] [3] [4]
  • 5. CONTENT  Introduction to two dimensional array  Declaration  Initialization  Input and output of a 2d array  Storage allocation
  • 6. Two - Dimensional Arrays  What is a Two-dimensional array? B = 51, 52, 53 54, 55, 56 Algebraic notation Col 1 Col 2 Col 3 Row 1 Row 2 Int b[2][3] = {(51, 52, 53),(54, 55, 56)}; Array type Array name Array dimension = 2 Two rows Three columns First row second row C notation
  • 7. 7 Indexes in 2D arrays  Assume that the two dimensional array called val is declared and looks like the following:  To access the cell containing 6, we reference val[1] [3], that is, row 1, column 3. val Col 0 Col 1 Col 2 Col 3 Row 0 8 16 9 52 Row 1 3 15 27 6 Row 2 14 25 2 10
  • 8. DECLARATION  How to declare a multidimensional array? int b[2][3]; the name of the array to be b the type of the array elements to be int the dimension to be 2 (two pairs of brackets []) the number of elements or size to be 2*3 = 6
  • 10.  How to initialize a Two-Dimensional array?  Initialized directly in the declaration statement  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. INITIALIZATION
  • 11. Input of Two-Dimensional Arrays  Data may be input into two-dimensional arrays using nested for loops interactively or with data files.  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.
  • 12. Output of Two-Dimensional Arrays  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.
  • 13. 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; clrscr(); printf(“enter the elements in the array:”);
  • 14. 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(); }
  • 15. OUTPUT :- Enter elements in array: 1 2 3 4 5 6 7 8 9 123 456 789
  • 16. Storage Allocation In storage allocation of array contagious memory is allocated to all the array elements.
  • 17.
  • 19. A program to add two matrix 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:”);
  • 20. 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]); } }
  • 21. 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(); }
  • 22. OUTPUT:- Enter elements in array:- 1 3 2 4 3 5 4 6 5 7 6 8 7 9 8 2 4 6 9 81012 1 141618 2
  • 23. A program to input a matrix and print its transpose. #include<stdio.h> #include<conio.h> void main() { int a[3][3],b[3][3]; int i,j; clrscr(); printf(“enter the elements in the array”);
  • 24. 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(); }
  • 25. OUTPUT:- Enter elements in array: 1 2 3 4 5 6 7 8 9 147 258 369
  • 26. A program to multiply two matrix entered by the user and print it. #include<stdio.h> #include<conio.h> void main() { int a[3][3],b[3][3]; int i,j; clrscr(); printf(“enter the elements in the array”);
  • 27. 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]); } }
  • 28. for(i=0 ; i<3 ; i++) { for(j=0 ; j<3 ; j++) c[i][j]=0; { for(k=0 ; k<2 ; k++) { c[i][j]=c[i][j]+a[i][k]*b[k][j] printf(“%3d”,c[i][j]); } } printf(“n”); } getch(); }
  • 29. OUTPUT:- Enter elements in array:- 1 3 2 4 3 5 4 6 5 7 6 8 7 9 8 30 66 102 9 36 81 121 1 42 96 150 2