Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Масиви зі Структурами | Розуміння Структур і Пам'яті
Опанування Структур у C

bookМасиви зі Структурами

Створення масиву зі структур не відрізняється від створення масиву з іншими типами даних.

Доступ до елементів такого масиву здійснюється так само, як і до звичайних масивів — за індексами.

struct Person {
    char name[50];
    int age;
    double height;
};

struct Person people[2];

Як приклад, створимо масив структур, який зберігатиме інформацію про людину.

main.c

main.c

copy
12345678910111213141516171819202122232425262728293031323334353637
#include <stdio.h> #include <string.h> // structure definition struct Person { char name[50]; int age; double height; }; int main() { // declaring an array of structures struct Person people[3]; strcpy(people[0].name, "Alice"); people[0].age = 25; people[0].height = 1.75; strcpy(people[1].name, "Bob"); people[1].age = 30; people[1].height = 1.80; strcpy(people[2].name, "Charlie"); people[2].age = 35; people[2].height = 1.70; // output information about people from the array for (int i = 0; i < 3; ++i) { printf("Person %d:\n", i + 1); printf("Name: %s\n", people[i].name); printf("Age: %d\n", people[i].age); printf("Height: %.2f\n", people[i].height); printf("\n"); } return 0; }

Кожен елемент масиву people представляє окрему структуру Person. Ми можемо отримати доступ до полів конкретної особи, використовуючи індекс масиву, наприклад: people[0].name або people[1].age.

Далі ми проходимо по всьому масиву за допомогою циклу for і виводимо інформацію про кожну особу на екран.

Використання масивів структур дозволяє зберігати декілька об'єктів одного типу в одному місці та легко отримувати до них доступ за індексом, що особливо корисно при роботі з великими наборами даних.

Завдання

Swipe to start coding

Реалізуйте функцію calculateWarehouseTotal, яка обчислює загальну вартість усіх товарів, що зберігаються на складі. Кожен товар має назву, кількість і ціну. Функція повинна проходити по масиву товарів і обчислювати суму quantity * price для всіх елементів.

  1. Усередині функції calculateWarehouseTotal створіть змінну total, ініціалізовану значенням 0.0f.
  2. Використайте цикл for для ітерації від індексу 0 до n.
  3. Для кожного товару перемножте quantity на price і додайте результат до total.
  4. Поверніть кінцеве значення total як загальну вартість складу.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 4
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

close

bookМасиви зі Структурами

Свайпніть щоб показати меню

Створення масиву зі структур не відрізняється від створення масиву з іншими типами даних.

Доступ до елементів такого масиву здійснюється так само, як і до звичайних масивів — за індексами.

struct Person {
    char name[50];
    int age;
    double height;
};

struct Person people[2];

Як приклад, створимо масив структур, який зберігатиме інформацію про людину.

main.c

main.c

copy
12345678910111213141516171819202122232425262728293031323334353637
#include <stdio.h> #include <string.h> // structure definition struct Person { char name[50]; int age; double height; }; int main() { // declaring an array of structures struct Person people[3]; strcpy(people[0].name, "Alice"); people[0].age = 25; people[0].height = 1.75; strcpy(people[1].name, "Bob"); people[1].age = 30; people[1].height = 1.80; strcpy(people[2].name, "Charlie"); people[2].age = 35; people[2].height = 1.70; // output information about people from the array for (int i = 0; i < 3; ++i) { printf("Person %d:\n", i + 1); printf("Name: %s\n", people[i].name); printf("Age: %d\n", people[i].age); printf("Height: %.2f\n", people[i].height); printf("\n"); } return 0; }

Кожен елемент масиву people представляє окрему структуру Person. Ми можемо отримати доступ до полів конкретної особи, використовуючи індекс масиву, наприклад: people[0].name або people[1].age.

Далі ми проходимо по всьому масиву за допомогою циклу for і виводимо інформацію про кожну особу на екран.

Використання масивів структур дозволяє зберігати декілька об'єктів одного типу в одному місці та легко отримувати до них доступ за індексом, що особливо корисно при роботі з великими наборами даних.

Завдання

Swipe to start coding

Реалізуйте функцію calculateWarehouseTotal, яка обчислює загальну вартість усіх товарів, що зберігаються на складі. Кожен товар має назву, кількість і ціну. Функція повинна проходити по масиву товарів і обчислювати суму quantity * price для всіх елементів.

  1. Усередині функції calculateWarehouseTotal створіть змінну total, ініціалізовану значенням 0.0f.
  2. Використайте цикл for для ітерації від індексу 0 до n.
  3. Для кожного товару перемножте quantity на price і додайте результат до total.
  4. Поверніть кінцеве значення total як загальну вартість складу.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 4
single

single

some-alt