力技です。
タブと改行を含めて表示し、横に長い文字列を使わない事を目標にしたら
こんな事になってしまいました。
#include <stdio.h>
char d = 0x22;
char n = 0x0A;
char t = 0x09;
int main()
{
char *str[7] = {"#include <stdio.h>","char d = 0x22;","char n = 0x0A;","char t = 0x09;","int main()","{","char *str[7] = {"};
char *str2[5] = {"%s%c%c%s%c%s%c%s%c%c%s%c%s%c%c%s",
"%c%s%c,%c%s%c,%c%s%c,%c%s%c,%c%s%c,%c%s%c,%c%s%c};%c",
"%cchar *str2[5] = {%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c};%c",
"%cchar *str3[5] = {%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c};%c%c",
"%cprintf(%c%s%c,%s);%c%cprintf(%c%s%c,%s);%c%cprintf(%c%s%c,%c%c%c%s);%c%cprintf(%c%s%c,%c%c%c%s);%c%cprintf(%c%s%c,%c%c%c%s);%c}"};
char *str3[5] = {"str[0],n,n,str[1],n,str[2],n,str[3],n,n,str[4],n,str[5],n,t,str[6]",
"d,str[0],d,d,str[1],d,d,str[2],d,d,str[3],d,d,str[4],d,d,str[5],d,d,str[6],d,n",
"t,d,str2[0],d,n,t,t,t,t,t,d,str2[1],d,n,t,t,t,t,t,d,str2[2],d,n,t,t,t,t,t,d,str2[3],d,n,t,t,t,t,t,d,str2[4],d,n",
"t,d,str3[0],d,n,t,t,t,t,t,d,str3[1],d,n,t,t,t,t,t,d,str3[2],d,n,t,t,t,t,t,d,str3[3],d,n,t,t,t,t,t,d,str3[4],d,n,n",
"t,d,str2[0],d,str3[0],n,t,d,str2[1],d,str3[1],n,t,d,str2[2],d,n,t,t,str3[2],n,t,d,str2[3],d,n,t,t,str3[3],n,t,d,str2[4],d,n,t,t,str3[4],n"};
printf("%s%c%c%s%c%s%c%s%c%c%s%c%s%c%c%s",str[0],n,n,str[1],n,str[2],n,str[3],n,n,str[4],n,str[5],n,t,str[6]);
printf("%c%s%c,%c%s%c,%c%s%c,%c%s%c,%c%s%c,%c%s%c,%c%s%c};%c",d,str[0],d,d,str[1],d,d,str[2],d,d,str[3],d,d,str[4],d,d,str[5],d,d,str[6],d,n);
printf("%cchar *str2[5] = {%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c};%c",
t,d,str2[0],d,n,t,t,t,t,t,d,str2[1],d,n,t,t,t,t,t,d,str2[2],d,n,t,t,t,t,t,d,str2[3],d,n,t,t,t,t,t,d,str2[4],d,n);
printf("%cchar *str3[5] = {%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c,%c%c%c%c%c%c%c%s%c};%c%c",
t,d,str3[0],d,n,t,t,t,t,t,d,str3[1],d,n,t,t,t,t,t,d,str3[2],d,n,t,t,t,t,t,d,str3[3],d,n,t,t,t,t,t,d,str3[4],d,n,n);
printf("%cprintf(%c%s%c,%s);%c%cprintf(%c%s%c,%s);%c%cprintf(%c%s%c,%c%c%c%s);%c%cprintf(%c%s%c,%c%c%c%s);%c%cprintf(%c%s%c,%c%c%c%s);%c}",
t,d,str2[0],d,str3[0],n,t,d,str2[1],d,str3[1],n,t,d,str2[2],d,n,t,t,str3[2],n,t,d,str2[3],d,n,t,t,str3[3],n,t,d,str2[4],d,n,t,t,str3[4],n);
}