セクション 3. 章 4
single
構造体と配列
メニューを表示するにはスワイプしてください
構造体から配列を作成することは、他のデータ型で配列を作成する場合と全く同じです。
このような配列の要素へのアクセスは、通常の配列と同様にインデックスで行います。
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 ループを使って配列全体を走査し、各人物の情報を画面に表示します。
構造体の配列を使用することで、同じ型の複数のオブジェクトを一箇所に格納し、インデックスで簡単にアクセスできるため、大量のデータを扱う際に特に便利です。
タスク
スワイプしてコーディングを開始
倉庫に保管されているすべての製品の総価値を計算する関数 calculateWarehouseTotal を実装します。各製品は名前、数量、価格を持っています。この関数は製品の配列を反復処理し、すべてのアイテムについて quantity * price の合計を計算します。
- 関数
calculateWarehouseTotal内で、変数totalを0.0fで初期化します。 forループを使用して、インデックス0からnまで反復します。- 各製品について、
quantityとpriceを掛け、その結果をtotalに加算します。 - 最終的な
totalの値を倉庫全体のコストとして返します。
解答
すべて明確でしたか?
フィードバックありがとうございます!
セクション 3. 章 4
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください