Ir para o conteúdo
n3lThon

Leitura de Inteiros

Mensagens Recomendadas

n3lThon    1
n3lThon

Como faço a seguinte leitura para inteiros:

1 2 3 4 5 6

Isto sem saber a quantidade de valores que irão ser inseridos. Eles estão separados por um espaço e todos na mesma linha.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Triton    12
Triton

Lê caracter a caracter com o getchar() até encontrares um \n. Também deve dar para usar um loop com o scanf() (que retorna o número de coisas que consegui ler, por isso é fácil ver quando precisas de parar).

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
n3lThon    1
n3lThon

Estou a perceber como fazer, excepto a parte de fazer um loop num scanf, nem depois de saber o número de valores inseridos, como colocá-los em variáveis.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Triton    12
Triton

Estou a perceber como fazer, excepto a parte de fazer um loop num scanf, nem depois de saber o número de valores inseridos, como colocá-los em variáveis.

Como não sabes o valor de items de antemão, tens de usar um array que aumente de tamanho automaticamente ou uma lista. Quanto ao loop do scanf, vou-te mostrar um pequeno exemplo.

Como te disse o scanf retorna o número de items que conseguiu ler, por isso usas algo do género:

while(scanf("%d", array[i++]) != 0);

Deve funcionar. :cheesygrin:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Triton    12
Triton

Mas para o loop parar é necessário colocar um eof.

Quando o scanf não conseguir ler mais números, o loop vai parar. Epa eu não testei isto, mas deve funcionar.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade