Jump to content

Dúvidas sobre leitura de arquivos


pabkil
 Share

Recommended Posts

Inicialmente boa noite! Bom meu problema é o seguinte, preciso ler um arquivo de texto que está no seguinte formato:

9101422;Abilio Gambim Parada

9200644;Aira Muane Dutra Lippert

10102111;Alan Brochier

9201505;Alan Lucas Romagnoli Becerra

8102307;Alan Schlindvein de Araujo

9200622;Albert Timm

8201651;Alex Bertei

Tenho de colocar os números em um vetor e os nomes em outro, para a seguir organiza-los via bubble e merge sort. Alguém tem alguma ideia de como posso implementar isso?

Pensei inicialmente em utilizar o fscanf para leitura com parada em EOF mas ele lê além dos números.

Bom, desde já agradeço pela ajuda!

Link to comment
Share on other sites

Boa noite!

exprimenta

#include<stdio.h>

int main()
{
    FILE *fich;
    int num;
    char nome[55];
    fich=fopen("a.txt","r");


    fscanf(fich,"%d;%[^\n]",&num,nome);
    printf("%d:%s",num,lol);
}

espero ter ajudado

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

O feof() não "faz" o que tu pensas que faz.

Suponho que pensas que o feof() te indica, a dado momento, se o ficheiro está no fim. Pois não é isso que ele faz.

O que o feof() "faz" é dizer-te, depois de uma falha de leitura, se a falha de leitura se deveu ao ficheiro ter chegado ao fim.

Uso correcto:

int ch;
do {
    ch = getchar();
    if (ch != EOF) {
        /* processar ch */
    }
} while (ch != EOF);
if (feof(stdin)) /* a leitura acabou porque o input chegou ao fim */;
if (ferror(stdin)) /* a leitura acabou porque houve um erro no input (falha de disco, falha de rede, ...) */;

Uso incorrecto:

while (!feof(stdin)) {
    ch = getchar();
    /* processar ch */
}

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.