Масиви зі Структурами
Створення масиву зі структур не відрізняється від створення масиву з іншими типами даних.
Доступ до елементів такого масиву здійснюється так само, як і до звичайних масивів — за індексами.
struct Person {
char name[50];
int age;
double height;
};
struct Person people[2];
Як приклад, створимо масив структур, який зберігатиме інформацію про людину.
main.c
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 для всіх елементів.
- Усередині функції
calculateWarehouseTotalстворіть зміннуtotal, ініціалізовану значенням0.0f. - Використайте цикл
forдля ітерації від індексу0доn. - Для кожного товару перемножте
quantityнаpriceі додайте результат доtotal. - Поверніть кінцеве значення
totalяк загальну вартість складу.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you show me how to initialize the array of structures with data?
How do I print all the information for each person in the array?
Can you explain how to modify a specific field in one of the structures?
Чудово!
Completion показник покращився до 4.35
Масиви зі Структурами
Свайпніть щоб показати меню
Створення масиву зі структур не відрізняється від створення масиву з іншими типами даних.
Доступ до елементів такого масиву здійснюється так само, як і до звичайних масивів — за індексами.
struct Person {
char name[50];
int age;
double height;
};
struct Person people[2];
Як приклад, створимо масив структур, який зберігатиме інформацію про людину.
main.c
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 для всіх елементів.
- Усередині функції
calculateWarehouseTotalстворіть зміннуtotal, ініціалізовану значенням0.0f. - Використайте цикл
forдля ітерації від індексу0доn. - Для кожного товару перемножте
quantityнаpriceі додайте результат доtotal. - Поверніть кінцеве значення
totalяк загальну вартість складу.
Рішення
Дякуємо за ваш відгук!
single