Dev - C++ - ¿se puede utilizar cadenas en un if?

 
Vista:
sin imagen de perfil

¿se puede utilizar cadenas en un if?

Publicado por RSlayer (2 intervenciones) el 02/11/2015 03:11:49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdio.h"
#include "string.h"
#include "iostream"
#include "conio.h"
int main ()
{
	char nombre[50]="";
	char vocal[]="aeiou";
	char consonante[]="";
	char minuscula[]="abcdefghijklmnopqrstuvwxyz";
	char mayusculas[]="";
	int contadorvocal=0;
	printf("escribe tu nombre:\n");
	gets(nombre);
 
	if ((nombre==vocal) && (vocal>=1))
	contadorvocal++;
	printf("el numero de vocales es:", contadorvocal);
 
	return 0;
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 45
Ha disminuido su posición en 6 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

¿se puede urilizar cadenas en un if?

Publicado por xve (68 intervenciones) el 02/11/2015 12:19:44
Si que se puede, pero fíjate que local no es una cadena, sino que es un array de valores...

Tendría que ser algo como:
1
if (nombre==vocal[0])

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

¿se puede urilizar cadenas en un if?

Publicado por aguml (522 intervenciones) el 02/11/2015 13:02:17
NO se puede, lo que realmente estas comparando ahí no son cadenas. Para ello usa strcmp, strcmp, te cresta un bucle donde compares carácter por carácter. La librería string.h trae todo lo que necesitas así que echa un vistazo y lee para que sirve cada función de esa librería.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

¿se puede urilizar cadenas en un if?

Publicado por RSlayer (2 intervenciones) el 09/11/2015 03:45:39
muchas gracias me si me sirvio if (vocal == "aeiou"). También puedes hacer if ( vocal[0]=='a' ) ya no me manda ningun error pero no se porque no me muestra ningun valor en la consola?¿

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "stdio.h"
#include "string.h"
#include "iostream"
#include "conio.h"
int main ()
{
	char nombre[50]="";
	char vocal[]="aeiou";
	char consonante[]="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	char minuscula[]="abcdefghijklmnopqrstuvwxyz";
	char mayusculas[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	int contadorvocal=0, contadorconsonante=0;
	printf("escribe tu nombre:\n");
	gets(nombre);
 
	 if ((nombre == vocal) && (vocal == "aeiou"))
	 {
	contadorvocal=contadorvocal+1;
 
	printf("el numero de vocales es:", contadorvocal);
}
 
else if (nombre == consonante)
{
	contadorconsonante=contadorconsonante+1;
	printf("el numero de consonantes es:", contadorconsonante);
}
	return 0;
 
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de vangodp
Val: 73
Ha disminuido 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

¿se puede utilizar cadenas en un if?

Publicado por vangodp (287 intervenciones) el 03/11/2015 05:13:57
Si usas C++ y la clase string sí que puedes. en vez de declarar char vocal[]="aeiou"; haga string vocal="aeiou";, entonces puedes hacer if (vocal == "aeiou"). También puedes hacer if ( vocal[0]=='a' ) como si fuera un char[].
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar