4 ms·int main(void) { unsigned int n = 7; printf("%i", (-n % n)); return 0; } this gives 4 :(by hexo 6y agoint main(void) { unsigned int n = 7; printf("%i", (-n % n)); return 0; } this gives 4 :(kazinator 6y agoNote that %i requires an int argument, not unsigned; you want %u.Arnavion 6y agoIf your int is 32 bits wide, 4 is exactly what it should give.