And when you write C carefully, the C code looks like this (thanks seanjensengrey and rhth54656 for ideas):
int i; static char* a[] = { "%d\n", "Fizz\n", "Buzz\n", "FizzBuzz\n" };
for ( i = 1; i < 101; i++ )
printf( a[ (i%5==0)*2 + (i%3==0) ], i );
The loosely similar Python: for i in range( 1, 101 ):
print( [ i,'Fizz','Buzz','FizzBuzz' ][ (i%5==0)*2 + (i%3==0) ] )