/*Programa Principal */
int main(void)
{
	int opc, valor;
	Elemento* lst;
	for(;;){
	opc = menu();
	switch(opc)
	{
	case 1:
		{
			lst = lst_cria();
			break;
		}//Fim case 1

	case 2:
		{
		    int valor1;
		    printf("Digite o valor a ser inserido: ");
		    scanf("%d", &valor1 );
			lst = lst_insere(lst , valor1);
			break;
		}//Fim case 2
		case 3:
		{
		    int valor1;
		    printf("Digite o valor a ser pesquisado: ");
		    scanf("%d", &valor1 ); 
			busca(lst, valor1); 
			break;
		}//Fim case 3
		case 4:
		{
			lst_imprime(lst);
			break;
		}//Fim case 4
		case 5:
		{
			lst_libera(lst);
			break;
		}//Fim case 5
		case 6:
        {
				  printf("Digite o valor a ser removido: ");
				  scanf("%d", &valor);
				  lst = lst2_retira(lst, valor);
				  break;
        }
		case 7:
		{
				  exit(0);
		}

	}//Fim switch
}//Fim for
}
示例#2
0
int main(){
    Lista *l;
    l=lst_cria();
    l=lst_insere(l,10);
    l=lst_insere(l,20);
    l=lst_insere(l,30);
    l=lst_insere(l,40);
    l=lst_insere(l,50);
    l=lst_insere(l,100);
    l=lst_insere(l,200);
    l=lst_insere(l,300);
    l=lst_insere(l,400);
    l=lst_insere(l,500);
    lst_imprime(l);
    puts("");
    int elem;
    printf("Escolha o elemento no qual ocorrera a separacao da lista: ");
    scanf("%d",&elem);
    int busca=lst_buscar(l,elem);
    if(busca){
        Lista *l2;
        l2=lst_cria();
        l2=separa(l,elem);
        printf("Lista 1: ");
        lst_imprime(l);
        puts("");
        printf("Lista 2: ");
        lst_imprime(l2);
        puts("");
        lst_libera(l2);
    }else{
        puts("Elemento nao encontrado");
    }
    lst_libera(l);
    return 0;
}
int main(void){
    Lista* l;               //declara uma lista nao atualizada
    l = lst_cria();         //cria e inicializa lista como vazia
    l = lst_insere(l, 23);  //insere na lista o elemento 23
    l = lst_insere(l, 45);  //insere na lista o elemento 45
    l = lst_insere(l, 32);  //insere na lista o elemento 32
    l = lst_insere(l, 48);  //insere na lista o elemento 32
//  ...
    lst_imprime(l);
    l = lst_retira(l, 48);
    printf("\n");
    lst_imprime(l);
    lst_libera(l);
    return 0;
}
示例#4
0
Lista *lst_removepref(Lista *v, int num)
{
  int cont=0;
  Lista *p=v;
  while(p!=NULL)
  {
    cont++;
    p=p->prox;
   }
  if(num>cont)
   lst_libera(v);
   else
   {
    p=v;
    while(num!=0)
    {
      p=v->prox; //auxiliar para guardar o endereco do prox elemento
      free(v); //liberar o v
      num--; //decrementando o num pra sair do while
      v=p; //passando o endereco do prox elemento pro v
    }
    return v;
   }
}