ESTOU EMPACADO NESTE PROGRAMA, NAO CONSIGO TERMINA-LO!
ABAIXO O PEDIDO DO PROGRAMA.
Leia as informações do arquivo “Cidades MG.txt”.
· Armazene em uma estrutura de dados a escolher (pilha, fila, árvore binária)
· A estrutura de dados deve ser uma estrutura não homogênea de dados dinamicamente alocada
· Ordene as informações através de algum algoritmo de ordenação a escolher
· Forneça um menu ao usuário com as seguintes opções:
o Ordenar por ordem crescente de população e imprimir em um novo arquivo
o Ordenar por ordem decrescente de população e imprimir em um novo arquivo
o Listar as 5 cidades mais populosas (imprimir na tela e em arquivo)
o Ordenar alfabeticamente e imprimir em um novo arquivo
o Listar as 5 primeiras cidades na lista alfabética (imprimir na tela e em arquivo)
EM ANEXO O PROGRAMA Cidades MG.txt
TUDO QUE CONSEGUI FAZER ATE O MOMENTO FOI ISSO, NAO CONSIGO MELHORAR OU SAIR DISSO, NAO ESTA RODANDO O PROGRAMA.
#include <stdio.h>
void ordemcrescente();
void ordemdecrescente();
void cidadepopulosa();
void ordemalfa();
void primeirasdalista();
char nome[80];
void ponteiro()
{
FILE *fp;
fp = fopen("CidadesMG.txt","r");
if (!fp)
{
printf("\nArquivo nao pode ser aberto!");
}
else
printf("\nArquivo aberto com sucesso!");
fclose(fp);
}
int main()
{
int i;
do {
printf("\n\nMenu de opções : \n1) Digite 1 para ordenar por ordem crescente de população e imprimir em um novo arquivo. \n2) Digite 2 para ordenar por ordem decrescente de população e imprimir em um novo arquivo \n3) Digite 3 para listar as 5 cidades mais populosas (imprimir na tela e em arquivo). \n4) Digite 4 para ordenar alfabeticamente e imprimir em um novo arquivo. \n5) Digite 5 para listar as 5 primeiras cidades na lista alfabética (imprimir na tela e em arquivo). \n0)Digite zero para sair do programa.\n");
scanf("\n%i", &i);
fflush(stdin);
switch (i)
{
case 1:
ordemcrescente();
break;
case 2:
ordemdecrescente();
break;
case 3:
cidadepopulosa();
break;
case 4:
ordemalfa();
break;
case 5:
primeirasdalista();
break;
case 0:
printf("\nSaindo do Programa!");
break;
default:
printf("\nOpcao invalida!");
break;
}
} while (i!=0);
}
void ordemcrescente()
{
FILE *f;
char nome[80];
while(!feof(f))
{
fgets(nome,80,f);
printf("\n%s",nome);
}
}
Cidades MG.txt