I'm trying to do a program that randomly generates 12 digits, not equal to 9, using pointers. But I get some pretty nasty errors and I just can't understand what's wrong. I'm using XCode on Mac OS X.
Code:
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <math.h>

void random(int * pnt1, int * pnt2, int * pnt3, int * pnt4, int * pnt5, int * pnt6, int * pnt7, int * pnt8, int * pnt9, int * pnt10, int * pnt11, int * pnt12);

int main()
{
	int a,b,c,d,e,f,g,h,i,j,k,l;
	a=b=c=d=e=f=g=h=i=j=k=l=9;
	
	random(&a,&b,&c,&d,&e,&f,&g,&h,&i,&j,&k,&l);
	printf("&d&d&d&d&d&d&d&d&d&d&d&d",a,b,c,d,e,f,g,h,i,j,k,l);
	getchar();
	return 0;
}


void random(int * pnt1, int * pnt2, int * pnt3, int * pnt4, int * pnt5, int * pnt6, int * pnt7, int * pnt8, int * pnt9, int * pnt10, int * pnt11, int * pnt12)
{
	int rando;
	int i;
	
	for(i=0;i<12;i++)
	{
		do
		{
			rando=rand();
			rando=floor(rando/1000000000);
		}
		while(rando=9)
		
		
			
			if(i==0)
			{
				pnt1=&a;
				*pnt1=rando;
			}
			else if(i==1)
			{
				pnt2=&b;
				*pnt2=rando;
			}
			else if(i==2)
			{
				pnt3=&c;
				*pnt3=rando;
			}
			else if(i==3)
			{
				pnt4=&d;
				*pnt4=rando;
			}
			else if(i==4)
			{
				pnt5=&e;
				*pnt5=rando;
			}
			else if(i==5)
			{
				pnt6=&f;
				*pnt6=rando;
			}
			else if(i==6)
			{
				pnt7=&g;
				*pnt7=rando;
			}
			else if(i==7)
			{
				pnt8=&h;
				*pnt8=rando;
			}
			else if(i==8)
			{
				pnt9=&i;
				*pnt9=rando;
			}
			else if(i==9)
			{
				pnt10=&j;
				*pnt10=rando;
			}
			else if(i==10)
			{
				pnt11=&k;
				*pnt11=rando;
			}
			else if(i==11)
			{
				pnt12=&l;
				*pnt12=rando;
			}
		}	
				
	}}
Sorry for the quite long "if" sequence, but I didn't want to try a switch right now.

So the errors I get are :

1- Conflicting types for 'random' for my function prototype and declaration
2- Syntax error before the first 'if'
3- Syntax error before every 'else if'
4- From 'pnt3' and the rest, I get : 'pnt3' redeclared as different kind of symbol
5- Syntax error before '}' token

And the warnings:

1-At my function definition, I get, for every pointer from 3 to 12, "previous definition of 'pntX' was here"
2- From 'pnt3' to 'pnt12' after the *pntX=rando, I get, "type defaults to 'int' in declaration of 'pntX'"
AND "initialization makes pointer from integer without a cast"

So, what have I done wrong?