Aprendendo Arrays em C: Desafios Práticos com Vetores
Os arrays, também conhecidos como vetores, são estruturas fundamentais da linguagem C. Eles permitem armazenar vários valores do mesmo tipo em uma única variável, facilitando a organização e o processamento de dados.
Na prática, arrays são utilizados para armazenar notas de alunos, quantidades em estoque, códigos de produtos, listas de clientes e diversas outras informações. Dominar vetores é um passo importante para desenvolver programas mais organizados e eficientes.
Neste conteúdo, você irá praticar o uso de arrays através de situações reais envolvendo escolas, lojas e sistemas de controle de dados.
QUESTÃO 1 – Maior nota da turma
Uma turma possui 8 alunos.
Crie um programa em C que:
- leia as 8 notas e armazene em um array;
- encontre a maior nota da turma;
- exiba a maior nota encontrada.
Exemplo:
Digite a nota do aluno 1: 7
Digite a nota do aluno 2: 9
Digite a nota do aluno 3: 5
Digite a nota do aluno 4: 10
Digite a nota do aluno 5: 8
Digite a nota do aluno 6: 6
Digite a nota do aluno 7: 7
Digite a nota do aluno 8: 9
Maior nota: 10
Resposta:
#include
int main() {
int notas[8];
int i;
int maior;
for(i = 0; i < 8; i++) {
printf("Digite a nota do aluno %d: ", i + 1);
scanf("%d", ¬as[i]);
}
maior = notas[0];
for(i = 1; i < 8; i++) {
if(notas[i] > maior) {
maior = notas[i];
}
}
printf("\nMaior nota: %d\n", maior);
return 0;
}
QUESTÃO 2 – Quantidade de aprovados
Uma escola deseja saber quantos alunos foram aprovados.
Crie um programa que:
- leia as notas de 10 alunos;
- considere aprovado quem tiver nota maior ou igual a 7;
- conte quantos alunos foram aprovados;
- exiba o total.
Exemplo:
Total de aprovados: 6
Resposta:
#include
int main() {
int notas[10];
int i;
int aprovados = 0;
for(i = 0; i < 10; i++) {
printf("Digite a nota: ");
scanf("%d", ¬as[i]);
}
for(i = 0; i < 10; i++) {
if(notas[i] >= 7) {
aprovados++;
}
}
printf("\nTotal de aprovados: %d\n", aprovados);
return 0;
}
QUESTÃO 3 – Procurando um produto
Uma loja possui os seguintes códigos de produto: 101, 205, 330, 450, 512, 678
Crie um programa que:
- armazene esses códigos em um array;
- peça ao usuário um código;
- informe se o código foi encontrado ou não.
Exemplo:
Digite o codigo: 450
Produto encontrado
Resposta:
#include
int main() {
int produtos[6] = {101, 205, 330, 450, 512, 678};
int codigo;
int i;
int encontrado = 0;
printf("Digite o codigo: ");
scanf("%d", &codigo);
for(i = 0; i < 6; i++) {
if(produtos[i] == codigo) {
encontrado = 1;
}
}
if(encontrado == 1) {
printf("\nProduto encontrado\n");
}
else {
printf("\nProduto nao encontrado\n");
}
return 0;
}
QUESTÃO 4 – Invertendo a ordem
Crie um programa que:
- leia 7 números inteiros;
- armazene em um array;
- exiba os números na ordem inversa da digitação.
Exemplo:
Digitados:
10 20 30 40 50 60 70
Ordem inversa:
70 60 50 40 30 20 10
Resposta:
#include
int main() {
int numeros[7];
int i;
for(i = 0; i < 7; i++) {
printf("Digite um numero: ");
scanf("%d", &numeros[i]);
}
printf("\nOrdem inversa:\n");
for(i = 6; i >= 0; i--) {
printf("%d ", numeros[i]);
}
return 0;
}
QUESTÃO 5 – Controle de estoque
Uma loja possui 8 produtos.
Crie um programa que:
- leia a quantidade em estoque de cada produto;
- conte quantos produtos estão sem estoque (quantidade igual a 0);
- exiba o total encontrado.
Exemplo:
Produtos sem estoque: 3
Resposta:
#include
int main() {
int estoque[8];
int i;
int semEstoque = 0;
for(i = 0; i < 8; i++) {
printf("Quantidade do produto %d: ", i + 1);
scanf("%d", &estoque[i]);
}
for(i = 0; i < 8; i++) {
if(estoque[i] == 0) {
semEstoque++;
}
}
printf("\nProdutos sem estoque: %d\n", semEstoque);
return 0;
}
Caso o C ainda não esteja instalado em seu dispositivo, clique no botão abaixo para realizar a instalação.





