Code:
#include <stdio.h>
#include <stdlib.h>
int spil(int *games, int *gameskifte)
{
if (*games < 1) {
if (*gameskifte < 2)
return *games + 1;
else
return *games + 2;
} else {
if (*games < 3) {
if (*gameskifte < 2)
return *games + 2;
else
return *games + 4;
} else {
if (*gameskifte < 2)
return *games + 3;
else
return *games + 5;
}
}
return 0;
}
int main()
{
int games,gameskifte;
for ( games = 0 ; games < 5 ; games++ ) {
for ( gameskifte = 0 ; gameskifte < 5 ; gameskifte++ ) {
int result = spil(&games,&gameskifte);
printf("games=%d, gameskifte=%d, result=%d\n", games, gameskifte, result);
}
}
return 0;
}
$ gcc bar.c
$ ./a.out
games=0, gameskifte=0, result=1
games=0, gameskifte=1, result=1
games=0, gameskifte=2, result=2
games=0, gameskifte=3, result=2
games=0, gameskifte=4, result=2
games=1, gameskifte=0, result=3
games=1, gameskifte=1, result=3
games=1, gameskifte=2, result=5
games=1, gameskifte=3, result=5
games=1, gameskifte=4, result=5
games=2, gameskifte=0, result=4
games=2, gameskifte=1, result=4
games=2, gameskifte=2, result=6
games=2, gameskifte=3, result=6
games=2, gameskifte=4, result=6
games=3, gameskifte=0, result=6
games=3, gameskifte=1, result=6
games=3, gameskifte=2, result=8
games=3, gameskifte=3, result=8
games=3, gameskifte=4, result=8
games=4, gameskifte=0, result=7
games=4, gameskifte=1, result=7
games=4, gameskifte=2, result=9
games=4, gameskifte=3, result=9
games=4, gameskifte=4, result=9
Next, put some debug print statements inside your C function (maybe even log to a file if you don't have a handy console), to verify what you're being passed makes sense.