Search
— Jan Faigl 2025/10/15 13:52
Dotazy z přednášek
Q: Jak inicializovat hodnoty pole při definici?
Při definici proměnné typu pole můžeme rovnou nastavit jednotlivé prvky a využít tzv. designated initializers. V takovém případě jsou incializované všechny prvky. Ty uvedené na zadanou hodnotu, jinak je nastavena výchozí hodnota 0.
int a[6] = {10, 12, [3] = 3, 5}; //pole a má 6 prvků s hodnotami {10, 12, 0, 3, 5, 0}, tj. nespecifkované prvky mají hodnotu 0. int b[] = {1, 2, 3}; // pole má pouze 3 prvky {1, 2, 3} int c[6] = {1, 2, 3}; // pole má 6 prvků { 1, 2, 3, 0, 0, 0} int d[4] = {}; // pole má 4 prvky incializované na 0, tj. {0, 0, 0, 0}
Načítání hodnot celých čísel funkcí scanf() ve smyčce while:
scanf()
while
#include <stdio.h> int main(void) { int v; int i = 0; while (scanf("%d", &v) > 0) { printf("%d %d\n", ++i, v); } printf("No. of read values %d\n", i); return 0; }
Skončil v nekonečné smyčce, neboť původní podmínka cyklu
while (scanf("%d", &v)) { ... }