Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa Noite!
preciso de uma ajuda!!
Referente a métodos de ordenação
Tenho que fazer um menu de opções , e a ultima opção do menu chama uma nova tela
e não sei como chamar essa nova tela!
Na opção Resultado, deve mostras em outra tela, quanto tempo cada metodo demorou para efetuar as trocas.
Segue o código, ainda não esta pronto, falta terminar algumas opções.
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void main (void)
{
int j,aux,*p=NULL,qtde,opc,x,y, v[100];
printf("\n\n\t\t .:Metodos de Ordenacao:. \n\n"); //menu de opçoes
printf("\t1-Gerar Vetor\n\t2-Metodo Bolha\n\t3-Seleçao\n\t4-Inserçao\n\t5-Shell Sort\n\t6-Quick Sort\n\t7-Resultado");
do
{
printf("\n\n\tInforme a opçao:\n\t");
scanf("%d",&opc);
if(opc>7||opc<1)
{
printf("Favor selecionar uma opção do menu.");
printf("\n");
}//if
else
{
switch(opc)
{
case 1: //Gera o vetor com o numero de posiçoes escolhida
printf("\tInforme o numero posicoes?\n");
scanf("%d",&qtde);
if(p != NULL)
{
free(p);
} //if
p=(int*)malloc(sizeof(int)*qtde);
if(!p)
{
printf("erro");
exit(1);
} //if
x=0;
randomize();
for(x=0;x<qtde;x++)
p[x]=random(1000);
for(x=0;x<qtde;x++)
printf(" %d",p[x]);
break;
case 2: //Metodo Bolha
x=0;
for(y=qtde;y>0;y--)
{
for(x=0;x-1<y-1;x++)
{
if(p[x]>p[x+1])
{
aux=p[x+1];
p[x+1]=p[x];
p[x]=aux;
} // if
} //for
} // for
printf("\n\n");
for(x=0;x<qtde;x++)
{
printf(" %d",p[x]);
}//for
break;
case 3: //Selecao direta
printf("\tNao disponivel\n");
break;
case 4: //Insercao Direta
for (int i=1;i<qtde;i++)
{
aux=v[i];
j=(i-1);
while(j>=0 && v[j]>aux)
{
v[j+1]=v[j];
j--;
} //while
v[j+1]=aux;
} //for
break;
}//switch
}//else
}//do
while(opc!=7);
if(p != NULL)
free(p);
}//main
Carregando comentários...