IOCCC

The International Obfuscated C Code Contest

Winning entries

[ The judges | IOCCC home page | How to enter | FAQ |
IOCCC news | People who have won | Winning entries ]



PREVIOUS IOCCC WINNERS

[ 2004 | 2003 | 2002 | 2001 | 2000 | 1999 | 1998 | 1997 | 1996 | 1995 | 1994 |
1993 | 1992 | 1991 | 1990 | 1989 | 1988 | 1987 | 1986 | 1985 | 1984 | ALL ]



2004
17th International Obfuscated C Code Contest

anonymous - Rendering of a stroked font

arachnid - Curses maze displayer/navigator with only line-of-sight visibility

burley - A Poker game

gavare - A ray tracer

gavin - Mini-OS

hibachi - A CGI capable HTTP server

hoyle - Curses based polynomial graphing with auto-scale

jdalbec - Conway's look'n'say sequence split into elements

kopczynski - OCR of 8, 9, 10 and 11

newbern - Renders arbitary bitmapped fonts

omoikane - A CRC inserter

schnitzi - Editor animation

sds - Space/tab/linefeed steganography

vik1 - X Windows car racing game

vik2 - Calculates prime numbers using only CPP



2003
There are no 2003 IOCCC winners

2002
There are no 2002 IOCCC winners

2001
16th International Obfuscated C Code Contest

anonymous - optimizing dynamic binary translator, x86 progs on any host

bellard - A C subset programming system for x86

cheong - Computes arbitrary-precision square root

coupard - Outputs current time as a sound file

ctk - A driver game

dgbeards - Plays suicide chess

herrmann1 - A Turing machine using preprocessor

herrmann2 - A SIRDS/3D generator, the source is SIRDS/3D itself

jason - An Adventure-like game

kev - A Pong game across network

ollinger - Prints primes with a sieve graph

rosten - Makes X mouse pointer have inertia or anti-inertia

schweikh - Shell glob matcher

westley - Sorts/scrambles, outputs as text/punch-cards

williams - Plays X-based missile command



2000
15th International Obfuscated C Code Contest

anderson - ASCII to semaphore code convertor

bellard - Prints M6972593 (2^6972593-1) by Modular Fast Fourier Transform

bmeyer - An image compressor

briddlebane - Verbally abuses the user

dhyang - Saitou Hajime image that prints a prog that prints a prog ...

dlowe - A dc-style calculator that uses embedded Perl

jarijyrki - An X-based spreadsheet program with graphing features!

natori - Phase of the moon

primenum - Source with English words that looks like a prime tester

rince - Plots the positions of the four Galilean moons of Jupiter

robison - Highly Compressed Program for Playing Hygienic Checkers

schneiderwent - Prints the aproximate time in words

thadgavin - Prints a dazzeling moving image under multiple interfaces

tomx - C source, shell program and Makefile



1999
There are no 1999 IOCCC winners

1998
14th International Obfuscated C Code Contest

banks - A flight simulator!

bas1 - Outputs a gziped 3D beam maze in Postscript

bas2 - determines the size of stdin under IOCCC sizing rules

chaos - Rotates and zooms an object using ASCII graphics

df - A word guessing game

dlowe - Pootifies stdin (useful to view Microsoft html files)

dloweneil - A very addictive ASCII poot game

dorssel - ASCII / Morse code translator

fanf - Translates Lambda expressions into combinator expressions

schnitzi - Prints a C program that sorts arguments using strange functions

schweikh1 - Tests to see if your compiler and headers are standard

schweikh2 - Prints random 0's and 1's; causes some gcc's as passes to choke

schweikh3 - Finds duplicate files that waste disk space

tomtorfs - CRC generator



1997
There are no 1997 IOCCC winners

1996
13th International Obfuscated C Code Contest

august - Subset of C compiler and byte code interpreter

dalbec - Generator of strong probable-primes to a given base

eldby - Flying 3D spheres in an ASCII display

gandalf - Displays the ASCII and 8 bit character tables

huffman - Braille to ASCII and vice versa

jonth - X based dual player tic-tac-toe game

rcm - Gunzip equivalent

schweikh1 - Calculates Easter dates from 1582 to 2199 AD

schweikh2 - Search for a limited class of expressions that equal a constant

schweikh3 - Determins the memory allocation honesty of the OS

westley - Shows the time on clock with a configurable face and style



1995
12th International Obfuscated C Code Contest

cdua - Generate a maze on the screen and then solve it

dodsond1 - Text to "Pig Latin" translator

dodsond2 - Interactive 3D Maze

esde - Searches for words in a file which have the same Soundex code

garry - Environment-expansion and binary output via escaped env vars

heathbar - 16 bit addition the easy/hard way

leo - Output interesting patterns and cycles in PostScript

makarios - Emits the base 8 representation of prime palindromic in base 8

savastio - Infinite-precision factorial calculator

schnitzi - Find divisors: where a core dump is a feature, not a bug

spinellis - Abusing the rules

vanschnitz - Towers of Hanoi via the C pre-processor



1994
11th International Obfuscated C Code Contest

dodsond1 - play a game of othello

dodsond2 - Hunt the Wumpus (gziped source)

horton - Plot cubic equations on a tty

imc - print a random n by n magic square

ldb - print a random line from stdin

schnitzi - flips stdin along a diagonal (source mirrored along diagonal)

shapiro - print time of day on an tty

smr - world's smallest self reproducing program

tvr - interactive fractals for the X Window System

  1. Makefile
  2. tvr.c
  3. tvr.alt.c
  4. tvr.hint
  5. tvr.bw
  6. tvr.color

weisberg - prints prime numbers

westley - Adventure/Dungeon like game played via the C pre-processor



1993
10th International Obfuscated C Code Contest

ant - egrep utility with Posix-like documentation

cmills - X11 program that shatters and bounces windows

dgibson - plays the game of like using cpp

ejb - tower of Hanoi and patience pizzle

jonth - game of Tetris

leo - game of mastermind (cows & bulls)

lmfjyh - source is the filename, prints value of __FILE__

plummer - prints numbers up to a given value

rince - game state machine language, comes with a number of games

schnitzi - answers questions about English text in a file

vanb - calculator that prints in octal



1992
9th International Obfuscated C Code Contest

adrian - grep-like utility using a state machine transition language

albert - factors multi-precision numbers with factors < MAX_LONG

ant - make utility

buzzard.1 - print factorial, gcd or prime test using a Babbage-like engine

buzzard.2 - forth-like stack machine

gson - anagram generator

imc - Mandelbrot/Julia drawer

kivinen - X11 space invaders, dropout and knockout games

lush - prints "Hello, World" using error messages

marangon - game to balance a grid of digits to all 5's

nathan - obfuscation by (trivial) encryption (source not exported)

vern - plays chess

westley - print ASCII world map and mark a location by lat/long



1991
8th International Obfuscated C Code Contest

ant - compressed vi-like editor

brnstnd - sorta stack language

buzzard - walk thru a maze from a first person point of view

cdupont - prints a message without vowels

davidguy - plays life on a root window, doesn't need Xlib or include files

dds - basic compiler, heavily compressed

fine - rot13s lines of input

rince - game with sprites, boulders, dimonds, and keys

westley - plays tic-tac-toe, compile output for next move, prints board



1990
7th International Obfuscated C Code Contest

baruch - short prog to solve N-queens problem

cmills - squished blackjack game

dds - basic interpreter, heavily compressed

dg - rot13 done with strange cpp macros

jaw - compress & atob standins

pjr - the quick brown fox... cppd, structs of functions

scjones - trigraph-abusing self-reproducing program

stig - nested-comment tester (all on command line)

tbr - simple compressed shell, silly layout

theorem - numerically solves the equation y'=f(x,y) and then some

westley - poetic exchange between lovers, prints "luvs me, luvs not"



1989
6th International Obfuscated C Code Contest

fubar - self-reconstructing, recompiling factorial program

jar.1 - char*_="Hello world.\n";

jar.2 - lisp interpreter, compressed

ovdluhe - monkey-typer following template, 'APE' identifiers

paul - print fibonacci base 2 by simulating turing machine

robison - apl-expression interpreter (binary), written in C--

roemer - prints e, script-pi shaped layout, _31415 identifiers

tromp - squished tetris

vanb - one-liner prints all subsets of arguments

westley - reversible, rot13able program that reverses and/or rot13s.



1988
5th International Obfuscated C Code Contest

applin - massive #define stuff, includes itself; prints table of primes

dale - prints command line, using lots of system calls

isaak - table driven table of the elements; cpp, self-inclusion

litmaath - sorts each arg using only argc, argv, and 'while(<cond>);'

phillipps - 'first day of christmas', tables, heavily main() calling

reddy - prints name of 'char *(*(foo[16])();', compressed

robison - print e in any base, uses only --, >=, and while()

spinellis - #include "/dev/tty"

westley - prints '3.141', circle made of '_-_-_-_' in layout



1987
4th International Obfuscated C Code Contest

biggar - program: "P;" defined on command line

heckbert - obfuscated fold program

hines - counts goto's, all ids anagrams of 'goto', all flow w goto

korn - one-liner that prints a message on a Un*x system

lievaart - very good othello player

wall - roman numeral -> decimal and vice versa conversion

westley - individually palindromic lines prints a palindrome



1986
3rd International Obfuscated C Code Contest

applin - hello world works under cc, /bin/sh, and f77

august - struct-heavy e-computation, memory allocation with sbrk

bright - hex dump, cpp compressed, uses lost of << for constants

hague - morse code filter written with 'DIT DAH _DIT DIT_DAH'

holloway - prints hello world! via a recursive main

marshall - train engine-shaped program prints "choo choo"

pawka - prints 'obfuscated?' big, uses xyyyx idents...

stein - prints HHMMSS in UTC time

wall - dvorak keyboard emulator



1985
2nd International Obfuscated C Code Contest

applin - one-liner to print hello world, with execlp

august - cpp obfuscated, compressed, main-recursive primes in binary

lycklama - heavily cpped with o_oo identifiers, scrolls text right

shapiro - two defines, one 7-liner, results in a maze

sicherman - rot13 with strange #defs that create comment headers etc.



1984
1st International Obfuscated C Code Contest

anonymous - prints hello world, where read is write

decot - prints garbage, weird cpp defines (keywords for others)

laman - prints spiralling numbers, laid out in columns

mullender - hardcoded vax and pdp-11 code to move :-) across the screen



* (all years)


NOTE: For your linking conveience, all of the entries above have URLs of the form:
http://www.ioccc.org/years.html#yyyy_title

Where yyyy is the year and title is the title of the entry.


Authored by:

chongo <was here> /\oo/\

Copyright © Landon Curt Noll, Simon Cooper, Peter Seebach and Leonid A. Broukhis, 2003.
All Rights Reserved.
Permission for personal, education or non-profit use is granted provided this copyright and notice are included in its entirety and remains unaltered. All other uses must receive prior permission in writing from the contest judges.