Arrays como Argumentos de Função
Parte da seção Fundamentos do Journey de C da Coddy. Lição 58 de 63.
Arrays podem ser passados como argumentos para funções em C. Quando um array é passado para uma função, o que é realmente passado é o endereço de memória do primeiro elemento.
Declare um array e uma função que o recebe como argumento:
void displayArray(int arr[], int size) {
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}Crie um array e chame a função:
int numbers[5] = {10, 20, 30, 40, 50};
displayArray(numbers, 5);Quando você passa um array para uma função, as alterações feitas no array dentro da função afetarão o array original:
void doubleValues(int arr[], int size) {
for(int i = 0; i < size; i++) {
arr[i] = arr[i] * 2;
}
}
// Call the function
doubleValues(numbers, 5);
// Now numbers contains: {20, 40, 60, 80, 100}Desafio
FácilCrie uma função chamada sumArray que receba dois argumentos:
- Um array de inteiros (arr).
- Um inteiro (size) que representa o tamanho do array.
A função deve calcular e retornar a soma de todos os elementos do array.
Depois, na função principal:
- Leia um inteiro n (o tamanho do array).
- Leia n inteiros e armazene-os em um array.
- Chame a função sumArray com o array.
- Imprima a soma no formato: "Sum: X" (onde X é a soma).
Experimente você mesmo
#include <stdio.h>
// Escreva sua função sumArray aqui
int main() {
int n;
scanf("%d", &n);
int arr[n];
for(int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Chame a função sumArray e imprima o resultado
return 0;
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
2Variáveis
Tipos de dadosInteiroPonto flutuante - DoubleCaracteresBooleanosConstantesNoções básicas de printfRegras de nomenclatura de variáveisConversão de tipos - Parte 1Conversão de tipos - Parte 2Desafio de revisão5Entrada e Saída
Especificadores de FormatoNoções Básicas de scanfDesafio de Revisão nº 1Validação de EntradaDesafio de Revisão nº 28Arrays
Declarando ArraysAcessando ElementosModificando ElementosArrays MultidimensionaisDesafio de Revisão nº 1Arrays como Argumentos de FunçãoAlgoritmos de ArraysDesafio de Revisão nº 23Operadores
Operadores aritméticosOperador móduloIncremento/DecrementoOperadores de atribuiçãoOperadores relacionaisOperadores lógicos Parte 1Operadores lógicos Parte 2Operadores lógicos Parte 3Desafio de revisãoPratique por conta própria: Compilador de C online