Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Arrays com Structs | Compreendendo Structs e Memória
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Dominando Structs em C

bookArrays com Structs

Criar um array de estruturas é igual a criar um array com outros tipos de dados.

O acesso aos elementos desse array é semelhante ao de arrays comuns, por índices.

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

struct Person people[2];

Como exemplo, considere a criação de um array de estruturas para armazenar informações sobre uma pessoa.

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; }

Cada elemento do array people representa uma estrutura Person separada. É possível acessar os campos de uma pessoa específica utilizando o índice do array, por exemplo: people[0].name ou people[1].age.

Em seguida, percorre-se todo o array utilizando um laço for e exibe-se as informações de cada pessoa na tela.

O uso de arrays de estruturas permite armazenar múltiplos objetos do mesmo tipo em um único local e acessá-los facilmente pelo índice, o que é especialmente útil ao trabalhar com grandes conjuntos de dados.

Tarefa

Swipe to start coding

Implemente uma função calculateWarehouseTotal que calcula o valor total de todos os produtos armazenados em um depósito. Cada produto possui um nome, quantidade e preço. A função deve percorrer o array de produtos e calcular a soma de quantity * price para todos os itens.

  1. Dentro da função calculateWarehouseTotal, crie uma variável total inicializada com 0.0f.
  2. Utilize um laço for para iterar do índice 0 até n.
  3. Para cada produto, multiplique quantity por price e adicione o resultado a total.
  4. Retorne o valor final de total como o custo total do depósito.

Solução

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 4
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

close

bookArrays com Structs

Deslize para mostrar o menu

Criar um array de estruturas é igual a criar um array com outros tipos de dados.

O acesso aos elementos desse array é semelhante ao de arrays comuns, por índices.

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

struct Person people[2];

Como exemplo, considere a criação de um array de estruturas para armazenar informações sobre uma pessoa.

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; }

Cada elemento do array people representa uma estrutura Person separada. É possível acessar os campos de uma pessoa específica utilizando o índice do array, por exemplo: people[0].name ou people[1].age.

Em seguida, percorre-se todo o array utilizando um laço for e exibe-se as informações de cada pessoa na tela.

O uso de arrays de estruturas permite armazenar múltiplos objetos do mesmo tipo em um único local e acessá-los facilmente pelo índice, o que é especialmente útil ao trabalhar com grandes conjuntos de dados.

Tarefa

Swipe to start coding

Implemente uma função calculateWarehouseTotal que calcula o valor total de todos os produtos armazenados em um depósito. Cada produto possui um nome, quantidade e preço. A função deve percorrer o array de produtos e calcular a soma de quantity * price para todos os itens.

  1. Dentro da função calculateWarehouseTotal, crie uma variável total inicializada com 0.0f.
  2. Utilize um laço for para iterar do índice 0 até n.
  3. Para cada produto, multiplique quantity por price e adicione o resultado a total.
  4. Retorne o valor final de total como o custo total do depósito.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 4
single

single

some-alt