>> David J. MALAN: Să presupunem că vrem să scrie un program care cere toată lumea în
o cameră pentru vârsta lor, și apoi imprimă cum vechi acei oameni va fi un
an de aici?
Acum, evident, aritmetica pentru acest problema va fi destul de
simplu.
Dar interesant întrebarea este, dacă ne-am Nu știe în avans cât de mulți oameni
vor fi în această cameră, cum am putea merge cu privire la stocarea
toate vârstele lor?
Ei bine, haideți să aruncăm o privire.
>> Să începem mai întâi determinat utilizatorului, așa cum am făcut aici, pentru
numărul de persoane în cameră, folosind getint și o buclă do-în timp ce, în scopul de a
a obține un număr întreg n.
Să presupunem că acum vrem să întreb fiecare astfel de persoană în camera de vârsta lor.
Ei bine, instinctele mele ar fi de a utiliza un buclă a face acest lucru a determinat, dar eu, de asemenea,
au nevoie de un loc pentru a stoca vârstele acelor oameni.
Și primele mele instincte nu ar fi de a utiliza o variabilă pentru prima
varsta persoanei, o altă variabilă pentru vârsta a doua persoanei,
un fel de-a lungul liniilor.
Vârstă Int -
bine, hai să-i spunem 1 pentru prima persoană.
Int vârsta de 2 ani pentru a doua persoană.
Int vârsta de 3 ani pentru a treia persoană.
>> Dar stai un minut, acest lucru nu este, probabil, cea mai bună cale de a merge în jos.
Pentru că nu știu în avans de scrierea și compilarea acestui program cum
mulți utilizatori de acolo vor fi.
Și în plus, în cazul în care nu există la fel de multe ca 100 de utilizatori, declarând 100 de variabile
un fel de ciudat numit ca acest lucru nu simt ca cel mai bun design.
>> Ei bine, din fericire, există o altă tip de variabilă numită o matrice care
ne permite să stocați un număr nelimitat de int în interiorul de ea, chiar dacă nu știm
atunci când scrieți programul meu de câte astfel int vom avea nevoie.
Deci, haideți să reiau ideea și șterge aceste mai multe int, și în loc să o înlocuiască
cu o variabilă numită, spun, varsta, plural.
Dar haideți să specificați în continuare pe această linie de cod în paranteze pătrate pe care le
Vreau n int.
Și, prin urmare, vom face în mod colectiv se referă la aceste int ca vârstele.
>> Acum, intr-o clipa voi fi în stare să mă la fiecare dintre cele ints în această matrice
similar cu titlu de paranteză notație, incepand de la 0.
Așa că haideți să procedeze acum într-o buclă de cere utilizatorilor pentru vârsta lor.
Pentru int mă 0.
I este mai mică decât N, numărul de persoane in camera, am plus plus.
>> Și acum în această buclă, să zicem printf vârstă de numărul de persoane, la suta I
este un substituent, virgulă.
Și acum, mai degrabă decât de la începe numărarea 0 în programul de sine, hai la
Cel creștere I, până la 1, astfel încât o normală persoană care utilizează acest program
nu trebuie să conta ca un s-ar putea om de știință de calculator.
Să facem acum vârstele, suport eu, prin urmare, precizând că vârsta i-lea în nostru
matrice de varsta este de gând pentru a obține valoarea de returnare a getint.
>> Acum, sub această buclă, să procedați să presupunem că ceva timp trece.
Și să procedeze acum într-o altă buclă la varsta de fapt, toată lumea în sala de
cu un an.
Deci, din nou, pentru int primesc 0, I este mai puțin decât N, numărul de persoane din
cameră, am plus plus.
>> Și acum în interiorul această buclă, să zicem printf un an de acum numărul de persoane,
la sută I este un substituent, va fi, suta I este un alt
substituent, de ani.
Și apoi să conectați în cele substituenți, să spunem că în primul rând am plus
1, astfel încât nou, vom începe numărarea pentru utilizator de la 1.
Și apoi să conectați în vârstă acelei persoane ca vârstele suport I plus 1, astfel
specificând să iau vârsta i-lea în nostru matrice de vârste, se adaugă 1 la ea, și apoi
introduce această sumă în substituent nostru, paren apropiate, punct și virgulă.
>> Hai acum compila acest program cu make vârstele, și să-l rulați cu punct
slash vârstele.
Și să presupunem că există doar trei persoane în cameră, și cineva este de 18,
cineva este de 19, cineva este de 20.
Ei bine, într-un an, fiecare dintre acei oameni va fi de 19, 20, și 21,
respectiv.