Ciao,
il problema è che la variabile viene definita all'interno delle funzioni, quindi è presente solo li.
Devi quindi creare la variabile prima, in modo che possa essere vista in modo globale:

codice:
        <script language="javascript" type="text/javascript">
            var clordine;
            function inserisci() {
                clordine = 'si';
                alert(clordine);
            }
            function cancella() {
                clordine = '0';
                alert(clordine);
            }
        </script>
    </head>
    <body>
        <input type="radio" name="ordine" onclick="cancella()" ><label for="ordine">0</label>
        <input type="radio" name="ordine" onclick="inserisci()"><label for="ordine">Si</label>
        <a href="test.php" onclick="location.href=this.href+'?key='+clordine;return false;">Link</a>
    </body>
</html>
Ti faccio anche notare che negli input hai onClick al posto di onclick e hai una duplicazione di id.

Personalmente preferirei fare il set della variabile con una sola funzione:

codice:
<script language="javascript" type="text/javascript">
            var clordine;
            function clickCheck(myRadio)
            {
                clordine = myRadio.value;
            }
        </script>
    </head>
    <body>
        <input type="radio" name="ordine" onclick="clickCheck(this);" value="0"><label for="ordine">0</label>
        <input type="radio" name="ordine" onclick="clickCheck(this);" value="si"><label for="ordine">Si</label>
        <a href="test.php" onclick="location.href=this.href+'?key='+clordine;return false;">Link</a>
Una domanda, perchè non cambiare direttamente l'href del link al click sul radio?