Advertisement
xathrya

Quine

May 2nd, 2015
371
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.21 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int
  4. main (void)
  5. {
  6.   char *s1="#include <stdio.h>%c%cint%cmain (void)%c{%c";
  7.   char *s2="  char *s%c=%c%s%c;%c  char *s%c=%c%s%c;%c";
  8.   char *s3="  char n='%cn', q='%c', b='%c%c';%c";
  9.   char *sp="  printf(";
  10.   char *s4="%ss1,n,n,n,n,n);%c";
  11.   char *s5="%ss2,'1',q,s1,q,n,'2',q,s2,q,n);%ss2,'3',q,s3,q,n,'p',q,sp,q,n);%c";
  12.   char *s6="%ss2,'4',q,s4,q,n,'5',q,s5,q,n);%ss2,'6',q,s6,q,n,'7',q,s7,q,n);%c";
  13.   char *s7="%ss2,'8',q,s8,q,n,'9',q,s9,q,n);%ss2,'0',q,s0,q,n,'x',q,sx,q,n);%c";
  14.   char *s8="%ss3,b,q,b,b,n);%ss4,sp,n);%ss5,sp,sp,n);%c";
  15.   char *s9="%ss6,sp,sp,n);%ss7,sp,sp,n);%ss8,sp,sp,sp,n);%c";
  16.   char *s0="%ss9,sp,sp,sp,n);%ss0,sp,sp,n,n,n);%c  return 0;%c}%c";
  17.   char *sx="--- This is an intron. ---";
  18.   char n='\n', q='"', b='\\';
  19.   printf(s1,n,n,n,n,n);
  20.   printf(s2,'1',q,s1,q,n,'2',q,s2,q,n);  printf(s2,'3',q,s3,q,n,'p',q,sp,q,n);
  21.   printf(s2,'4',q,s4,q,n,'5',q,s5,q,n);  printf(s2,'6',q,s6,q,n,'7',q,s7,q,n);
  22.   printf(s2,'8',q,s8,q,n,'9',q,s9,q,n);  printf(s2,'0',q,s0,q,n,'x',q,sx,q,n);
  23.   printf(s3,b,q,b,b,n);  printf(s4,sp,n);  printf(s5,sp,sp,n);
  24.   printf(s6,sp,sp,n);  printf(s7,sp,sp,n);  printf(s8,sp,sp,sp,n);
  25.   printf(s9,sp,sp,sp,n);  printf(s0,sp,sp,n,n,n);
  26.   return 0;
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement