Harjotuksen pohjana on tässä tullut tehtyä lukutaulukko for-silmukalla, joka pyytää 5 lukua ja tulostaa ne.
#include <stdio.h> int main (void) { int taulukko[5], i; /* Taulukon täyttö: */ for (i = 0; i < 5; i++) { printf ("Anna luku: "); scanf ("%d",&taulukko[i]); } /* Alkioiden tulostaminen yksitellen: */ for (i = 0; i < 5; i++) { printf ("%d\n",taulukko[i]); } return 0; }
Tarkoituksena olisi nyt tulostaa antamat luvut käänteisessä järjestyksessä, eli viimeisestä ensimmäiseen. Mitenkä tästä jatketaan?
Teet vain for silmukan käänteisenä eli
for (i = 5; i > 0; i--)
Muistappa kooditagit.
Mutta eikös se kävisi näin:
for(i=5; i>0; i--;) { printf ("%d\n",taulukko); }
EDIT: Äägh! aika joku kerkiää eka!
Jälkimmäinen for-silmukka pitää aloittaa ennemminkin näin:
for (i = 4; i >= 0; i--)
Nyt käydään läpi luvut 4, 3, 2, 1 ja 0, jotka ovat oikeat taulukon indeksit.
Jep, nyt toimii! Kiitti vastauksista!
Aihe on jo aika vanha, joten et voi enää vastata siihen.