#include <stdio.h>
int kertoma(int x);
int kertoma(int x) {
if (x<=0) {
return (1);
}
return (x*(kertoma(x-1)));
}
int main() {
int tulos = kertoma(5);
printf ("Kertoman tulos: %i\n",tulos);
return (0);
}
Ohjelma kääntyy GCC:llä, mutta ruudulle tulee vain tyhjä rivi. Missä vika? Kertoma-metodissa ole mitään vikaa. Tämän pitäisi tulostaa ruudulle "120".
Rekursio-ongelma C:ssä
6
182
Vastaukset
Ihan hyvin toimii.
Ajoin minigw-64-Windows 8.1:llä käännettyäni ohjelman GCC.exe:llä Windows-ympäristössä poikkeukselisesti, niin eipä n äyttänyt toimivan.
Täytyy katsoa, josko linux-ympäristösssä toimisi paremmin. Omasta mielestänikään mitään vikaa tuossa ole.- Anonyymi
Mutta sinä olet hölmö!
Mikä tuo %i on? Viimeksi C-kieltä väännettäessä tulostettiin kokonaisluvut %d:llä.
- Anonyymi
jerzunposti kirjoitti:
Ajattelin, että int-alkukirjain "i", ai %d -pitäisi olla käytössä?
Mitä pirua sinä jokellat selvän asian kanssa. Iskikö pätemisen tarve taas.
Ketjusta on poistettu 6 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1455093
Nyt tajusin mitä haet takaa
En epäile etteikö meillä olisi kivaa missä vaan. Se on iso hyppy henkisellä tasolla sinne syvempään päätyyn, kuten tiedä413263- 2463086
Kukapa se Ämmän Kievarissa yöllä riehui?
En ole utelias, mutta haluaisin tietää, kuka riehui Ämmän Kievarissa viime yönä?442638- 361814
Naiselle mieheltä
Huomasin tuossa, että jääkaapissani on eräs sinun ostamasi tuote edelleen avaamattomana. Arvaatko mikä?271595Salilla oli toissapäivänä söpö tumma
Nuori nainen, joka katseli mua. Hymyili kun nähtiin kaupan ovella sen jälkeen411556- 161447
- 231437
- 241337