Získavanie vedomostí
/ Knowledge Discovery >> Získavanie vedomostí >> technológie >> počítač >> počítačový softvér >>

Základy C Programming

dujú implementovať funkcie rand. Budeme ignorovať teraz.

Hlavnou funkciou je normálne. Štyri miestne celé čísla sú deklarované, a pole sa naplní 10 náhodné hodnoty pomocou slučky for. Všimnite si, že pole A obsahuje 10 jednotlivých celé čísla. Tie poukazujú na konkrétne číslo v poli pomocou hranatých zátvoriek. Takže [0], odkazuje na prvé celé číslo v poli, a [1] sa vzťahuje k druhej, a tak ďalej. Linka počínajúc /* a končia * /sa nazýva comment. Prekladač úplne ignoruje linku. Môžete umiestniť poznámky pre seba alebo iné programátorov pripomienky

Teraz pridajte nasledujúci kód na miesto ďalšie veci ... poznámku :.

 /* bublinkovej radenie pole * /for ( x = 0, x < MAX-1, x ++) pre (y = 0, y < MAX-x-1, y ++), ak (a [y] > a [y + 1]) {t = a [ ,,,0],y]; a [y] = a [Y + 1]; a [y + 1] = t; } /* Tlač radené array * /printf (" -------------------- \\ n "), pre (i = 0; i-MAX; i ++) printf ("% d \\ n ", a [i]); 

Tento kód triedi náhodné hodnoty a vytlačí je v zoradení poradí. Zakaždým, keď ho spustiť, dostanete rovnaké hodnoty. . Ak by ste chceli zmeniť hodnoty, ktoré sú radené, zmeňte hodnotu rand_seed pri každom spustení programu

Jediný jednoduchý spôsob, ako skutočne porozumieť tomu, čo tento kód robí, je to " vykonať; ručne . " To znamená, že predpokladáme, MAX je 4, aby to trochu viac zvládnuteľné, vziať si list papiera, a predstierať, že ste v počítači. Nakreslite pole na papieri a dal štyri náhodné, netriedený hodnoty do poľa. Vykonať každý riadok triediace časti kódu a čerpať presne, čo sa stane. Nájdete, že zakaždým, keď cez vnútorné slučku, väčšie hodnoty v poli sú tlačené smerom k spodnej časti poľa a menšie hodnoty bubliny hore k hornej časti.
Snažiť to!


  • V prvej kus kódu, skúste zmeniť na slučky, ktorá vypĺňa polia na jediný riadok kódu. Uistite sa, že výsledok je rovnaký ako pôvodný kód.
  • Take bublinkovej radenie kódu a dať ju do svojho vlastného funkcie. Záhlavie funkcie bude void bubble_sort (). Potom presuňte premenné používané bublina druhu na funkciu tiež, a aby im tam miestni. Vzhľadom k tomu, pole je globálna, nemusíte odovzdať parametre.
  • inicializovať generátor náhodných čísel osiva na rôzne hodnoty.
    C Chyby je potrebné sa vyvarovať


  • C nemá žiadnu kontrolu rozsahu, takže ak sa index za koncom poľa, nebude vám o tom. To sa nakoniec zrúti alebo vám odpadky dáta.
  • Funkcie hovoru Musí obsahovať (), a

    Page << [11] [12] [13]