Jump to content

crookedthing

Members
  • Content count

    3
  • Joined

  • Last visited

Community Reputation

0 Comum

About crookedthing

Informações Pessoais

  • Sexo
    Masculino
  1. Pessoal, eu tenho que criar uma lista encadeada que permita inserir e remover dados organizando-os em ordem alfabética( de acordo com o nome inserido). Consigo fazer isso em código comum, mas usando listas fica muito difícil. Estou tendo muita dificuldade. Envio o código, mas não compila, está cheio de falhas que eu não faço ideia de como solucionar. Obrigado. Este é o código onde desenvolvo as listas e as estruturas #include<stdilib.h> #include<stdio.h> #include<string.h> //nodo principal do código struct nodo{ int matricula; char nome[40]; float nota; struct nodo *prox; }; //ponteiro para o nodo. Inicio da lista struct nodo *inicio;//variavel global, acessavel por todos //função de inserção de dados //data= dados, n=posição void insert(int matricula, char nome[40], float nota){ //variavel auxiliar. struct nodo *temp; //conferir alocação de memoria com a criação de um nodo //criar um ponteiro para o nodo struct nodo* novo = (struct nodo*)malloc(sizeof(struct nodo*)); if(novo==NULL){ printf("sem memoria!"); } //se read estiver fazia,enfia o valor em inicio. if inicio(==NULL){ novo->matricula= data;// preenche com o valor //FALTA PREENCHER O RESTO novo->prox = NULL;//a proxima posição aponta para null. inicio = novo;//inicio aponta para a 1º posição }else{ //se o inicio não estiver vazio, preenche o nodo novo->matricula; novo->nome; novo->nota; while(strcmp(temp->data,novo->data)>0){//substituir data aqui temp= temp->prox;//variavel temporaria aponta para o proximo. temp->prox = novo;//depois aponta para novo. } } } void Mostrar(){ struct nodo *aux = inicio; printf("INICIO: %p\n", inicio); while (aux != NULL) { printf("%p|%.2f|%s|%d\n", aux, aux->nota,aux->nome,aux->matricula); aux = aux->prox; } printf("\n"); } int Retirar(){ struct nodo *aux, *auxOld; if (inicio == NULL) return 0; /// Percorrer a lista ate o fim aux = inicio; auxOld = NULL; while (aux->prox != NULL) { auxOld = aux; aux = aux->prox; } free(aux); auxOld->prox = NULL; return 1; }
  2. crookedthing

    Ler file em C até o EOF

    Obrigada, gente. Resolvi.
  3. crookedthing

    Ler file em C até o EOF

    Boa noite, pessoal. Eu tenho que criar um código para ler um arquivo externo (file) e imprimir em tela. Porém, ao executá-lo, ele imprime o que eu tenho no arquivo externo, porém, permanece imprimindo algo, ou seja, entra em um loop sem fim. Quem puder me ajudar nisso, agradeço. #include<stdio.h> #include<string.h> main(){ char texto; int i; FILE *arquivo; //ponteiro para o arquivo. if((arquivo=fopen("meu_texto.txt","r"))==NULL){ printf("Sem permissao"); return 1; }else{ for(i=0;i=EOF;i++){ texto=fgetc(arquivo); printf("%c", texto); } //while(arquivo!= EOF){ //} } return 0; system("pause"); }
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.