o QUE ESTA ERRADO NESSE CÓDIGO, POIS NÃO CONSIGO EXECUTAR AS FUNÇÕES. SERÁ QUE ESSE CÓDIGO ESTÁ ERRADO?
 
	#include<stdio.h> 
	#include<stdlib.h>
 
	typedef struct no_lista{ 
	    int valor; 
	    struct no_lista *prox; 
	}TNo; 
	int cria_lista(TNo *ptr) { 
	     
	    ptr=NULL; 
	     
	} 
	int exibir_elemento(TNo *ptr) { 
	    TNo *aux; 
	    if(ptr==NULL) { 
	        printf("\nLISTA VAZIA\n"); 
	    }else{ 
	        aux=ptr; 
	        while(aux!=NULL) { 
	            printf("\nValor: %d\n",aux->valor); 
	            aux=aux->prox; 
	        } 
	    } 
	     
	} 
	int procurar_elemento(TNo *ptr) { 
	    int procurado; 
	    TNo *aux; 
	     
	    printf("\nInforme o valor a ser procurado:\n"); 
	    scanf("%d",&procurado); 
	    if(ptr!=NULL) { 
	        aux=ptr; 
	        while(aux!=NULL) { 
	            if(aux->valor==procurado) { 
	                printf("\nValor encontrado\n"); 
	                break; 
	            } 
	            aux=aux->prox; 
	        } 
	    } 
	} 
	inserir_elemento(TNo *ptr) { 
	    TNo *novo,*aux; 
	    int novo_valor; 
	     
	    printf("\nInforme o novo valor a ser inserido:\n"); 
	    scanf("%d",&novo_valor); 
	    novo=(TNo *)malloc(sizeof(TNo)); 
	    novo->valor=novo_valor; 
	    novo->prox=NULL; 
	    if(ptr==NULL) { 
	        ptr=novo; 
	    }else{ 
	        aux=ptr; 
	        while(aux->prox!=NULL){ 
	            aux=aux->prox; 
	        } 
	        aux->prox=novo; 
	    } 
	     
	} 
	main() { 
	    TNo *inicio; 
	    int opcao; 
	     
	    do { 
	        printf("\n***Opcoes***\n"); 
	        printf("\n0 - sair\n"); 
	        printf("\n1 - criar lista\n"); 
	        printf("\n2 - exibir elemento\n"); 
	        printf("\n3 - procurar elemento\n"); 
	        printf("\n4 - inserir elemento\n"); 
	        scanf("%d",&opcao); 
	         
	        switch (opcao) { 
	            case 0 : break; 
	            case 1 : cria_lista(inicio); 
	            break; 
	            case 2 : exibir_elemento(inicio); 
	            break; 
	            case 3 : procurar_elemento(inicio); 
	            break; 
	            case 4 : inserir_elemento(inicio); 
	            break; 
	            default : printf("\nInforme um numero valido!\n"); 
	        } 
	        system("cls"); 
	        system("pause"); 
	    }while(opcao!=0); 
	     
	    system("pause"); 
	}