Mam taki kod:
#include<stdio.h>
#include<stdlib.h>
char rek(int x, int y, char *tekst)
{
printf("\nx = %d \ny = %d\n",x,y);
if(x == 0) return 'x';
if(x < 0) rek(23, y < 0 ? 3 : 13, tekst);
if(x > 0)
{
if(x > 10) rek(x - y, x > 10 ? 18 : 5,tekst);
else rek(x - 5, 0 , tekst);
printf("%c",tekst[x]);
}
}
int main()
{
rek(-1, - 1, "Podstawy programowania 2013");
return 0;
}
x i y wyszły mi dobre bo sprawdziłem komendą printfe w kodzie. Ale jeśli jest x = 20 to powinno wypisać 20 element tablicy czyli literę i, a wypisuję literę a. Czemu tak się dzieje ?