Buscar

biblioteca estruturada

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

#ifndef BIBI_H_INCLUDED
#define BIBI_H_INCLUDED
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <locale.h>
#include <math.h>
typedef struct no No;
struct no{
	int n;
	No* prox;
};
No *criarlista(){
	return NULL;
}
No *criarlista2 (int num){
	No* novo= (No*) malloc(sizeof(No));
	novo->n=num;
	novo->prox=NULL;
	return novo;
}
No *criarlista3(int num){
	No* novo= (No*) malloc(sizeof(No));
	novo->prox=NULL;
	return novo;
}
/*int verificar(No* lista, No* p){
	No* q;
	if(lista!=NULL){
		q=lista;
		while(q!=NULL){
			if(p==q){
			return (1) ;
			}
			q=q->prox;
		}
	}
	return(0);
}
*/
No *inserir(No* lista, int x){
	No* novo = (No*)malloc(sizeof(No));
	novo->n=x;
	novo->prox=lista;
	return novo;
}
No *inserir2(No* lista,int x){
	No *p;
	if(lista!=NULL){
		p=lista;
		while(p->prox!=NULL){
			p=p->prox;
		}
		No *novo = (No*) malloc(sizeof(No));
		novo->n=x;
		novo->prox=NULL;
		p->prox=novo;
	}else{
		lista=inserir(lista,x);
	}
	return (lista);
}
No *inserir3(No *lista,No *p, int v){
	No *n;
	int cont=0;
	n=lista;
	while(n!=NULL){
		if(n==p){
			cont=1;
			break;
		}
		n=n->prox;
	}
	if(lista!=NULL && cont==1){
		No *novo = (No*) malloc(sizeof(No));
		novo->n=v;
		novo->prox=p->prox;
		p->prox=novo;
	}
	return lista;
}
No *inserir3prof(No *lista,No *p, int v){
	No *q;
	if(lista!=NULL){
		while(q!=NULL){
			if(q==p){
				No *novo = (No*) malloc(sizeof(No));
				novo->n=v;
				novo->prox=p->prox;
				p->prox=novo;
				return lista;
			}
			q=q->prox;
		}
	}
	return lista;
}
void exibir(No* lista){
	No *p;
	if(lista!=NULL){
		p=lista;
		while(p!=NULL){
			printf("%i ",p->n);
			p=p->prox;
		}
	}
}
No* busca(No* lista, int k){
	No* p;
	if(lista!=NULL){
		p=lista;
		while(p!=NULL){
			if(p->n==k)return(p);
			p=p->prox;
		}
	}
	return(NULL);
}
No* remover(No* lista){
	No* temp;
	if(lista!=NULL){
		temp=lista;
		lista=lista->prox;
		free(temp);
	}
	return(lista);
}
No* remover2(No* lista){
	No* temp;
	No* p;
	if(lista!=NULL){
		p=lista;
		while(p->prox->prox!=NULL){
			p=p->prox;
		}
		temp=p->prox;
		p->prox=NULL;
		free(temp);
	}
	return(lista);
}
No* remover3(No* lista,int k){
 No* p;
 No* temp;
 if(lista!=NULL){
 p=lista;
 if(p->prox!=NULL){
 while(p->prox!=NULL){
 if(p->prox->n==k){
 temp=p->prox;
 p->prox=temp->prox;
 free(temp);
 }
 p=p->prox;
 }
 }else if(p->n==k){
 free(p);
 lista=NULL;
 }
 }
return(lista);
}
#endif // BIBI_H_INCLUDED

Outros materiais