/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

duda principiante

 
      Índice del Foro elrincondelc.com -> Principiantes C/C++
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
palta_records



Registrado: 10 Nov 2007
Mensajes: 2

MensajePublicado: 11/11/2007 8:29 am
Título: duda principiante

wenas, eh aqui una duda de novatos persistentes, el problema que tengo es que no se por que no me devuelve la letra "A" si es que escribo como entrada rana, de verdad si alguien me puede ayudar seria genial por favor....



#include <stdio.h>
#include <string.h>
#include <stdlib.h>


int main()
{
char cadena[6];
char rana[4];
printf( "Escribe una palabra: \n" );
fflush( stdout );
scanf( "%s", cadena );
if ( rana==cadena)
{
printf( "he guardado A ");
}
else
{
printf( "no he guardado nada");
}
system("pause");
}
Volver arriba
rir3760



Registrado: 01 Oct 2004
Mensajes: 3770
Ubicación: Mexico

MensajePublicado: 11/11/2007 8:50 am
Título:

Para empezar la cadena literal rana la debes colocar entre comillas dobles ("rana") y en C no puedes comparar directamente dos cadenas (es posible pero esto no compararia los contenidos sino sus direcciones en memoria).

Para comparar dos cadenas puedes utilizar la funcion strcmp (prototipo en <string.h>). El programa corregido (C estandar) es:
Código:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{
   char cadena[6];
   
   printf("Escribe una palabra: ");
   fflush( stdout );
   if (scanf( "%5s", cadena) != 1)
      return EXIT_FAILURE;
   
   if (strcmp(cadena, "rana") == 0)
      printf("he guardado A\n");
   else
      printf("no he guardado nada\n");
   
   system("pause");
   return EXIT_SUCCESS;
}


Un saludo
_________________
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
--
Rebec of Ginaz
Volver arriba
palta_records



Registrado: 10 Nov 2007
Mensajes: 2

MensajePublicado: 11/11/2007 9:29 am
Título:

muchas gracias por responder, saludos a todos los que se torturan la cabeza con c
Volver arriba
      Índice del Foro elrincondelc.com -> Principiantes C/C++
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com