C Programming54!41!46
C Programming54!41!46
DIMENSIONAL ARRAYS:
Array in C language is a collection or group of elements (data). All the elements of c
array are homogeneous (similar). It has contiguous memory location.
C array is beneficial if you have to store similar elements. Suppose you have to store
marks of 50 students, one way to do this is allotting 50 variables.
So it will be typical and hard to manage.
For example we cannot access the value of these variables with only 1 or 2 lines of
code.
Another way to do this is array. By using array, we can access the elements easily. Only
few lines of code is required to access the elements of array.
Advantage of C Array:
1) Code Optimization: Less code to the access the data.
2) Easy to traverse data: By using the for loop, we can retrieve the elements of an array
easily.
3) Easy to sort data: To sort the elements of array, we need a few lines of code only.
4) Random Access: We can access any element randomly using the array.
Disadvantage of C Array:
1) Fixed Size: Whatever size, we define at the time of declaration of array, we can't
exceed the limit. So, it doesn't grow the size dynamically like Linked List.
Declaration of C Array:
We can declare an array in the c language in the following way.
Syntax:
data_type array_name[array_size];
Initialization of C Array:
A simple way to initialize array is by index. Notice that array index starts from 0 and
ends with [SIZE - 1].
marks[0]=80;//initialization of array
marks[1]=60;
marks[2]=70;
marks[3]=85;
marks[4]=75;
Example:
#include<stdio.h>
int main()
{ Output:
int i=0; 80
int marks[5];//declaration of array 60
marks[0]=80;//initialization of array 70
marks[1]=60; 85
marks[2]=70; 75
marks[3]=85;
marks[4]=75;
//traversal of array
for(i=0;i<5;i++)
{
printf("%d \n",marks[i]);
}//end of for loop return 0;
}
C Array: Declaration with Initialization:
We can initialize the c array at the time of declaration. Let's see the code. int
marks[5]={20,30,40,50,60};
In such case, there is no requirement to define size. So it can also be written as the
following code
.
Example: int marks[]={20,30,40,50,60};
Programs:
#include<stdio.h> Output:
int main() 20
{ 30
int i=0; 40
int marks[5]={20,30,40,50,60};//declaration and initialization of array 50
//traversal of array 60
for(i=0;i<5;i++)
{
printf("%d \n",marks[i]);
}
return 0;
}
TWO DIMENSIONAL ARRAYS (2 D arrays):
The two dimensional array in C language is represented in the form of rows and
columns, also known as matrix. It is also known as array of arrays or list of arrays.
The two dimensional, three dimensional or other dimensional arrays are also known
as multidimensional arrays.
Declaration of two dimensional Array in C:
We can declare an array in the c language in the following way.
Syntax:
data_type array_name[size1][size2];
#include<stdio.h> Output:
int main() arr[0][0] = 1
{ arr[0][1] = 2
int i=0,j=0; arr[0][2] = 3
int arr[4][3]={{1,2,3},{2,3,4},{3,4,5},{4,5,6}}; arr[1][0] = 2
//traversing 2D array arr[1][1] = 3
for(i=0;i<4;i++) arr[1][2] = 4
{ arr[2][0] = 3
for(j=0;j<3;j++) arr[2][1] = 4
{ arr[2][2] = 5
printf("arr[%d] [%d] = %d \n",i,j,arr[i][j]); arr[3][0] = 4
}//end of j arr[3][1] = 5
}//end of i return 0; arr[3][2] = 6
}
STRING OPERATION:
What is meant by String?
String in C language is an array of characters that is terminated by \0 (null character).
There are two ways to declare string in c language.
1. By char array
2. By string literal
char ch[]={'j', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't', '\0'};
You can also define string by string literal in C language.
For example: char ch[]="javatpoint";
In such case, '\0' will be appended at the end of string by the compiler.
The strrev(string) function returns reverse of the given string. Let's see a simple example
of strrev() function.
Programs:
#include<stdio.h>
#include <string.h>int
main() Output:
{ Enter string: javatpoint
char str[20]; String is: javatpoint
printf("Enter string: "); Reverse String is: tnioptavaj
gets(str);//reads string from console
printf("String is: %s",str);
printf("\nReverse String is: %s",strrev(str));
return 0;
}