Ir para o conteúdo
NWY

Erro no ciclo.

Mensagens Recomendadas

NWY    0
NWY

Estava a dar revisoes quando me deparei com esta situação.

#include <stdio.h>

main()

{

char nome[30];

do

{

  printf("Nome:"); gets(nome);

  puts(nome);

}

while(nome!="SAIR");

printf("Sair...");

system("pause");

}     

Era suposto sair quando introduzi-se "SAIR"...mas não sai!

Que frustração!

Cumprimentos.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Mythos    0
Mythos

Muda o while para algo do género:

while( strcmp( nome, "SAIR" ) );

edit: tinha posto o ! no strcmp quando na realidade isso ia fazer sair do loop sempre que se inserisse algo diferente de "SAIR" ( o strcmp devolve 0 quando as strings são iguais )

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Hipnoted    6
Hipnoted

Para comparar strings tens de usar a função strcmp (string compare).

Ou seja, em vez de:

while(nome!="SAIR");

tens de pôr

while(strcmp(nome,"SAIR")!=0)

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