Cách dừng chương trình để xem kết quả

anh ơi cho em hỏi dừng chương trình này thế nào ạ

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
typedef struct Node
{
	int info;
	struct Node *pNext; 
}Node;
typedef struct Node pp;
struct List{
	pp *pHead;
	pp *pTail;
};
typedef struct List LIST;
void Init (List &L)
{
	L.pHead = L.pTail = NULL;
}	
pp * GetNode(int x)
{
	pp *p =new pp;
	if(p==NULL)
	{
		return NULL;
	}
	else
	p->info = x;
	p->pNext = NULL;
	return p;
}
void AddHead(LIST &L,pp *p)
{
	if (L.pHead == NULL)
	{
		L.pHead = L.pTail = p;
	}
	else
	p->pNext = L.pHead;
	L.pHead = p;
}
void AddTail(LIST &L, pp *p)
{
	if (L.pHead == NULL)
	{
		L.pHead  = L.pTail = p;
	}
	else
	L.pTail->pNext = p;
	L.pTail = p;
}
void Input (LIST &L)
{
	int i,n,x;
	char a;
	Init(L);
	for ( i = 1; i <= n; i++)
	{
	printf("\n nhap phan tu : ");
	scanf ("%d",&x);
	pp *p = GetNode(x);
	if (x != '#') ;	
}
while (x != '#');
}
void Output(LIST &L)
{
	for (pp *p = L.pHead; p != NULL; p = p->pNext)
	{
		printf("%4d", p->info);
	}
}
int main()
{
	LIST L;
	Input(L);
	Output(L);
	getch();
	return 0;
}