Chapter 7C Language Tutorial~1 min read
Arrays in C
Arrays — Same Type चे Collection
Array म्हणजे same data type च्या elements चा contiguous memory मधला collection. एकाच variable मध्ये multiple values साठवायला वापरतात. C मध्ये array चा size fixed असतो — एकदा ठरवला की बदलता येत नाही.
Marathi Analogy
Array म्हणजे train चे डबे! सगळे डबे एकामागे एक आहेत (contiguous memory). डबा क्रमांक 0, 1, 2... (indexing). सगळ्या डब्यांचा type same आहे — passengers (data type same). Train चे एकूण डबे आधी ठरवावे लागतात (fixed size).
1D Array
Array declaration, initialization, access
c
#include <stdio.h>
int main() {
// Declaration — size द्यायला लागतो
int marks[5];
// Initialization
marks[0] = 85;
marks[1] = 90;
marks[2] = 78;
marks[3] = 92;
marks[4] = 88;
// Shortcut initialization
int scores[] = {85, 90, 78, 92, 88}; // size auto होतो
// Access
printf("First marks: %d\n", marks[0]); // 85
printf("Last marks: %d\n", marks[4]); // 88
// Loop वापरून print
int n = 5;
float total = 0;
for (int i = 0; i < n; i++) {
printf("marks[%d] = %d\n", i, marks[i]);
total += marks[i];
}
printf("Average: %.2f\n", total / n); // 86.60
return 0;
}2D Array — Matrix
2D array — rows आणि columns
c
#include <stdio.h>
int main() {
// 3 rows, 3 columns
int matrix[3][3] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// Print matrix
printf("Matrix:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
// Output:
// 1 2 3
// 4 5 6
// 7 8 9
return 0;
}📌
C मध्ये array out-of-bounds access check होत नाही! marks[10] access केले तर garbage value मिळेल किंवा program crash होईल. Bounds manually check करा.
✅ Key Points — लक्षात ठेवा
- ▸int arr[5] — 5 integers चा array, index 0 ते 4
- ▸int arr[] = {1,2,3} — initialization वेळी size auto
- ▸2D array: int mat[rows][cols]
- ▸Array index 0 पासून सुरू — arr[0] पहिला element
- ▸C मध्ये array size fixed आहे — dynamic arrays साठी malloc() लागतो
0/12 chapters पूर्ण