Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- void inicia(int *top){
- *top=-1;
- }
- int cheia(int *top){
- if (*top==9) return 0;
- else return 1;
- }
- int vazia(int *top){
- if (*top==-1) return 0;
- else return 1;
- }
- void add(int *vet,int *top,int valor){
- int i,aux ,j;
- if(cheia(top));
- *top=*top+1;
- vet[*top]=valor;
- if(top!=0){
- for(i=0;i<*top;i++){
- for(j=0;j<*top;j++){
- if(vet[j]>vet[j+1]){
- aux=vet[j];
- vet[j]=vet[j+1];
- vet[j+1]=aux;
- }
- }
- }
- }
- }
- int retirar_inicio(int *vet,int *top){
- int i,aux,x;
- x=vet[0];
- for(i=1;i<=*top;i++){
- aux=vet[i-1];
- vet[i-1]=vet[i];
- vet[i]=aux;
- }
- *top=*top-1;
- return x;
- }
- int retirar_fim(int *vet,int *top){
- int x;
- x=vet[*top];
- *top=*top-1;
- return x;
- }
- int especifico(int *vet,int *top,int valor){
- int i,cont;
- for(i=0;i<=*top;i++)
- if(vet[i]==valor)cont=i;
- for (i=cont;i<*top;i++)
- vet[i]=vet[i+1];
- *top=*top-1;
- return valor;
- }
- void busca(int *vet,int *top,int valor){
- int i,cont=-1;
- for(i=0;i<=*top;i++)
- if (vet[i]==valor)cont=i;
- if (cont==-1){
- printf("Elmento nao encontrado.\n");
- return;
- }
- else{
- printf("\nElemento encontrado.\n");
- for(i=0;i<cont;i++)printf("%d ",vet[i]);
- printf("[%d] ",vet[cont]);
- for(i=cont+1;i<=*top;i++)printf("%d ",vet[i]);
- printf("\n");
- }
- }
- void mostrar(int *vet,int *top){
- int i;
- for (i=0;i<=*top;i++){
- printf("%d ",vet[i]);
- }
- printf("\n");
- }
- int menu(){
- int op;
- printf(" ___________________________________________\n");
- printf("|-------------------Menu--------------------|\n");
- printf("|0-Sair |\n");
- printf("|1-Adicionar |\n");
- printf("|2-Retirar elemento do inicio |\n");
- printf("|3-Retirar elemento do fim |\n");
- printf("|4-Mostrar |\n");
- printf("|5-Remover numero especifico |\n");
- printf("|6-Busca |\n");
- printf("|___________________________________________|\n");
- printf("Digite a Opcao: ");
- scanf("%d",&op);
- return op;
- }
- int main(){
- int vet[10],top,valor,op;
- inicia(&top);
- do{
- op=menu();
- switch (op){
- case 0: break;
- case 1:
- printf("Digite um valor: ");
- scanf("%d",&valor);
- add(vet,&top,valor);
- break;
- case 2:
- printf("Numero deletado: %d\n",retirar_inicio(vet,&top));
- break;
- case 3:
- printf("Numero deletado: %d\n",retirar_fim(vet,&top));
- break;
- case 4:
- mostrar(vet,&top);
- break;
- case 5:
- printf("Digite o numero a deletar: ");
- scanf("%d",&valor);
- printf("\nNumero deletado: %d\n",especifico(vet,&top,valor));
- break;
- case 6:
- printf("Digite o numero que deseja buscar: ");
- scanf("%d",&valor);
- busca(vet,&top,valor);
- break;
- default:
- printf("Opcao invalida\n");
- break;
- }
- system("pause");
- system("cls");
- }while(op!=0);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement