Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CS50. Си. Массивы.

Stas Shmakov
December 30, 2017

CS50. Си. Массивы.

Массивы представляют собой фундаментальную структуру данных, и они чрезвычайно полезны. Мы используем массивы для хранения значений одного и того же типа в смежных ячейках памяти. В частности, использование массивов позволяет нам создавать «группы» или «кластеры» переменных без необходимости указывать уникальное имя переменной для каждого, но все же позволяя нам индивидуально индексировать элементы массива. Если вы еще не начали отсчет с нуля, теперь самое время, потому что в C массивы индексируются с нуля, что означает, что первый элемент массива k-элементов находится в индексе под номером 0, а последний элемент находится в индекс под номером k-1.

Stas Shmakov

December 30, 2017
Tweet

More Decks by Stas Shmakov

Other Decks in Education

Transcript

  1. Объявление массива 65 87 30 1 0 2 <тип данных>

    name[<размер>]; Пример: int temperature[3]; temperature[0] = 65; temperature[1] = 87; temperature[2] = 30; ИЛИ int temperature[] = { 65, 87, 30 };
  2. Доступ к элементам массива for (int i = 0; i

    < 3; i++) { printf("%i\n", temperature[i]); } 65 87 30 1 0 2
  3. #include <stdio.h> #include <cs50.h> #define CLASS_SIZE 30 int main(void) {

    // объявление массива int scores_array[CLASS_SIZE]; // заполнение массива for (int i = 0; i < CLASS_SIZE; i++) { printf("Введите оценку для ученика %i: ", i); scores_array[i] = get_int(); } }
  4. Где ошибка? string class[3] = { "Sam", "Jess", "Kim" };

    for (int i = 0; i <= 3; i++) { printf("%s\n", class[i]); }
  5. Многомерные массивы x x 0,1 0,0 o 1,1 1,0 1,2

    o 2,1 2,0 2,2 0,2 char board[3][3]; board[1][1] = 'o'; board[0][0] = 'x'; board[2][0] = 'o'; board[0][2] = 'x';
  6. Доступ к многомерным элементам массива // распечатать все элементы for

    (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) printf("%c", board[i][j]); printf("\n"); }