#include <stdio.h>
int main(int argc, char* argv[])
{
const char* sfb = \"FizzBuzz\";
const char* sf[] = {\"%*.d\\n\", \"%.*s\\n\"};
int n;
for(n=1;n<=100;n++)
{
int i = ((n%15==0)|(n%3==0))+(n%5==0)*5*!(n%15==0);
printf(sf[i&1], i*4*((n%15==0)+1), i?(int)(sfb+i-1):n);
}
return 0;
}
http://codepad.org/eQc0wEWh
V2. 좀 더 더럽게 for문 축약. --------------
#include <stdio.h>
const char* sfb = \"FizzBuzz\";
const char* sf[] = {\"%*.d\\n\", \"%.*s\\n\"};
int main(int argc, char* argv[])
{
int n, i;
for(n=1,i=0;printf(sf[i&1], i*4*((n%15==0)+1), i?(int)(sfb+i-1):n),n<=100;n++,i=((n%15==0)|(n%3==0))+(n%5==0)*5*!(n%15==0))
;
return 0;
}
http://codepad.org/Dppdl2ec
http://codepad.org/Dppdl2ec