Tablice jako argumenty funkcji
Część sekcji Podstawy ścieżki C w Coddy. Lekcja 58 z 63.
Tablice można przekazywać jako argumenty funkcji w języku C. Gdy tablica jest przekazywana do funkcji, faktycznie przekazywany jest adres pamięci pierwszego elementu.
Zadeklaruj tablicę i funkcję, która przyjmuje ją jako argument:
void displayArray(int arr[], int size) {
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}Utwórz tablicę i wywołaj funkcję:
int numbers[5] = {10, 20, 30, 40, 50};
displayArray(numbers, 5);Gdy przekazujesz tablicę do funkcji, zmiany wprowadzone w tablicy wewnątrz funkcji wpłyną na oryginalną tablicę:
void doubleValues(int arr[], int size) {
for(int i = 0; i < size; i++) {
arr[i] = arr[i] * 2;
}
}
// Wywołaj funkcję
doubleValues(numbers, 5);
// Teraz numbers zawiera: {20, 40, 60, 80, 100}Wyzwanie
ŁatwyUtwórz funkcję o nazwie sumArray, która przyjmuje dwa argumenty:
- Tablicę liczb całkowitych (arr).
- Liczbę całkowitą (size) reprezentującą rozmiar tablicy.
Funkcja powinna obliczyć i zwrócić sumę wszystkich elementów tablicy.
Następnie, w funkcji main:
- Wczytaj liczbę całkowitą n (rozmiar tablicy).
- Wczytaj n liczb całkowitych i zapisz je w tablicy.
- Wywołaj funkcję sumArray, przekazując jej tablicę.
- Wypisz sumę w formacie: "Sum: X" (gdzie X jest sumą).
Spróbuj swoich sił
#include <stdio.h>
// Napisz tutaj swoją funkcję sumArray
int main() {
int n;
scanf("%d", &n);
int arr[n];
for(int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Wywołaj funkcję sumArray i wypisz wynik
return 0;
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
2Zmienne
Typy danychLiczby całkowiteLiczby zmiennoprzecinkowe — float i doubleZnakiWartości logiczneStałePodstawy printfZasady nazewnictwa zmiennychKonwersja typów — część 1Konwersja typów — część 2Wyzwanie podsumowujące5Wejście i wyjście
Specyfikatory formatuPodstawy scanfWyzwanie powtórkowe nr 1Walidacja danych wejściowychWyzwanie powtórkowe nr 28Tablice
Deklarowanie tablicDostęp do elementówModyfikowanie elementówTablice wielowymiaroweWyzwanie powtórkowe nr 1Tablice jako argumenty funkcjiAlgorytmy tablicoweWyzwanie powtórkowe nr 23Operatory
Operatory arytmetyczneOperator moduloInkrementacja/dekrementacjaOperatory przypisaniaOperatory relacyjneOperatory logiczne — część 1Operatory logiczne — część 2Operatory logiczne — część 3Wyzwanie podsumowującePoćwicz samodzielnie: Kompilator C online