usa i tag CODE o PHP.. in ogni modo compilando sul mio mac si ottiene:
codice:
$ gcc -Wall -ansi -pedantic main.c 
main.c:3: warning: return type of 'main' is not 'int'
main.c: In function 'main':
main.c:18: warning: format '%d' expects type 'int *', but argument 2 has type 'int'
main.c:20: warning: suggest parentheses around assignment used as truth value
che significa:

  • il secondo argometo della scanf gradirebbe l'indirizzo di un intero:
    codice:
    scanf("%d",&D[p]);
  • L'assegnamento che effettui in
    codice:
    for(i=9;i=0;i--)/*sostituzione dei valore con la base*/
    probabilmente e' un tuo errore, laddove avresti voluto effettuare un confronto:
    codice:
    for(i=9;i==0;i--)/*sostituzione dei valore con la base*/
    anzi meglio, a 'sto punto mettere la costante a sinistra:
    codice:
    for(i=9;0==i;i--)/*sostituzione dei valore con la base*/
    per approfondimenti vedi:
    http://www.isidoroghezzi.net/assegna...r_sbaglio.html


come ti ho già suggerito prima, evita di utilizzare identificatori criptici.