Seuraavaksi esitetään esimerkkipääohjelma, jossa käytetään edellä määriteltyjä rutiineja.
void main(void) { struct pino p1; int lkm=0; int luku,i; init(&p1); printf ("Syötä max %d positiivista",SIZE); printf(" lukua pinoon, lopetus = -1"); printf ("\nLuku: "); scanf ("%d",&luku); while (luku != -1 && lkm<SIZE) { push(&p1,luku); lkm++; printf ("Luku: "); scanf ("%d",&luku); } printf ("Luvut viimeisestä ensimmäiseen: "); for (i=1;i<=lkm;i++) { printf ("\n%d",pop(&p1)); } }