Witam, problem pewnie trywialny, lecz nie potrafię dostrzec powodu błędu. Otóż chciałbym policzyć wartość bezwzględną liczb z zakresu od - 2 000 000 000 do 2 000 000 000 i wszystko by grało gdbyby nie fakt, że wynik maksymalny który się wyświetla to 294967296. Poniżej kod. Próbowałem zmieniać typy zmiennych, ale bez skutku. mam 64-bit system, piszę w Code blocks, a kompiluje przy pomocy GNU GCC Compiler.
#include <stdio.h>
int main()
{
int a,b;
unsigned int c;
scanf("%d %d", &a, &b);
if((a>=-2000000000) && (a<=2000000000) && (b>=-2000000000) && (b<=2000000000) )
{c = abs(a-b);
printf("%d", c);}
return 0;
}