Manipulace s prvky pole v jazyce C zahrnuje různé operace prováděné s jednotlivými prvky pole, jako je přístup k prvkům, změna hodnot, vyhledávání, třídění a mnoho dalších. V tomto výkladu se podrobně podíváme na různé způsoby, jak manipulovat s prvky pole v jazyce C, a poskytneme konkrétní příklady jejich použití.
K jednotlivým prvkům pole se přistupuje pomocí indexu, který určuje pozici prvku v poli. Indexování v jazyce C začíná od 0, což znamená, že první prvek má index 0, druhý prvek má index 1 a tak dále.
V následujícím příkladu je deklarováno pole cisla
a k jednotlivým prvkům je přistupováno pomocí indexů.
#include <stdio.h>
int main() {
int cisla[5] = {10, 20, 30, 40, 50};
printf("Prvni prvek: %d\n", cisla[0]);
printf("Druhy prvek: %d\n", cisla[1]);
printf("Posledni prvek: %d\n", cisla[4]);
return 0;
}
Výstupem tohoto kódu je:
Prvni prvek: 10
Druhy prvek: 20
Posledni prvek: 50
Prvky pole mohou být měněny přiřazením nových hodnot na jejich pozici.
V následujícím příkladu jsou hodnoty prvků pole cisla
změněny pomocí přiřazení.
#include <stdio.h>
int main() {
int cisla[5] = {10, 20, 30, 40, 50};
cisla[2] = 35;
printf("Hodnota tretiho prvku: %d\n", cisla[2]);
return 0;
}
Výstupem tohoto kódu je:
Hodnota tretiho prvku: 35
Pro vyhledávání konkrétních hodnot v poli se obvykle používá cyklus procházející všechny prvky pole a porovnávající je s hledanou hodnotou.
V následujícím příkladu je vyhledána hodnota 30 v poli cisla
.
#include <stdio.h>
int main() {
int cisla[5] = {10, 20, 30, 40, 50};
int hledana_hodnota = 30;
int nalezeno = 0;
for (int i = 0; i < 5; i++) {
if (cisla[i] == hledana_hodnota) {
nalezeno = 1;
break;
}
}
if (nalezeno) {
printf("Hodnota %d nalezena.\n", hledana_hodnota);
} else {
printf("Hodnota %d nenalezena.\n", hledana_hodnota);
}
return 0;
}
Výstupem tohoto kódu je:
Hodnota 30 nalezena.
Manipulace s prvky pole jsou důležitými operacemi v jazyce C, které umožňují pracovat s kolekcemi datových hodnot. Porozumění způsobům, jak manipulovat s prvky pole, je klíčové pro efektivní psaní programů v jazyce C.