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.