C-массивы (с примерами)

В этом руководстве вы научитесь работать с массивами. Вы научитесь объявлять, инициализировать и получать доступ к элементам массива с помощью примеров.

Массив - это переменная, которая может хранить несколько значений. Например, если вы хотите сохранить 100 целых чисел, вы можете создать для них массив.

 int data(100); 

Как объявить массив?

 dataType arrayName (размер массива); 

Например,

 плавающая метка (5);

Здесь мы объявили массив mark с плавающей запятой. Его размер равен 5. Это означает, что он может содержать 5 значений с плавающей запятой.

Важно отметить, что размер и тип массива нельзя изменить после его объявления.

Доступ к элементам массива

Вы можете получить доступ к элементам массива по индексам.

Предположим, вы объявили метку массива, как указано выше. Первый элемент - это mark (0), второй элемент - mark (1) и так далее.

Несколько основных замечаний :

  • У массивов первым индексом является 0, а не 1. В этом примере mark (0) является первым элементом.
  • Если размер массива равен n, для доступа к последнему элементу используется n-1индекс. В этом примере отметка (4)
  • Предположим , что начальный адрес mark(0)является 2120d . Тогда адрес mark(1)будет 2124d . Точно так же адрес mark(2)будет 2128d и так далее.
    Это потому, что размер a floatсоставляет 4 байта.

Как инициализировать массив?

Во время объявления можно инициализировать массив. Например,

 int mark(5) = (19, 10, 8, 17, 9);

Вы также можете инициализировать массив таким образом.

 int mark() = (19, 10, 8, 17, 9);

Здесь мы не указали размер. Однако компилятор знает, что его размер равен 5, поскольку мы инициализируем его с помощью 5 элементов.

Вот,

 оценка (0) равна 19 метка (1) равна 10 метка (2) равна 8 метка (3) равна 17 метка (4) равна 9

Изменить значение элементов массива

 int mark(5) = (19, 10, 8, 17, 9) // make the value of the third element to -1 mark(2) = -1; // make the value of the fifth element to 0 mark(4) = 0; 

Элементы массива ввода и вывода

Вот как вы можете получить ввод от пользователя и сохранить его в элементе массива.

 // take input and store it in the 3rd element scanf("%d", &mark(2)); // take input and store it in the ith element scanf("%d", &mark(i-1)); 

Вот как вы можете напечатать отдельный элемент массива.

 // print the first element of the array printf("%d", mark(0)); // print the third element of the array printf("%d", mark(2)); // print ith element of the array printf("%d", mark(i-1)); 

Пример 1: ввод / вывод массива

 // Program to take 5 values from the user and store them in an array // Print the elements stored in the array #include int main() ( int values(5); printf("Enter 5 integers: "); // taking input and storing it in an array for(int i = 0; i < 5; ++i) ( scanf("%d", &values(i)); ) printf("Displaying integers: "); // printing elements of an array for(int i = 0; i < 5; ++i) ( printf("%d", values(i)); ) return 0; ) 

Вывод

 Введите 5 целых чисел: 1-3 34 0 3 Отображение целых чисел: 1-3 34 0 3 

Здесь мы использовали forцикл, чтобы получить 5 входных данных от пользователя и сохранить их в массиве. Затем, используя другой forцикл, эти элементы отображаются на экране.

Пример 2: Расчет среднего

 // Program to find the average of n numbers using arrays #include int main() ( int marks(10), i, n, sum = 0, average; printf("Enter number of elements: "); scanf("%d", &n); for(i=0; i  

Output

 Enter n: 5 Enter number1: 45 Enter number2: 35 Enter number3: 38 Enter number4: 31 Enter number5: 49 Average = 39 

Here, we have computed the average of n numbers entered by the user.

Access elements out of its bound!

Suppose you declared an array of 10 elements. Let's say,

 int testArray(10);

You can access the array elements from testArray(0) to testArray(9).

Now let's say if you try to access testArray(12). The element is not available. This may cause unexpected output (undefined behavior). Sometimes you might get an error and some other time your program may run correctly.

Hence, you should never access elements of an array outside of its bound.

Multidimensional arrays

In this tutorial, you learned about arrays. These arrays are called one-dimensional arrays.

In the next tutorial, you will learn about multidimensional arrays (array of an array).

Интересные статьи...