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

   
Vista:

¿se puede utilizar cadenas en un if?

Publicado por RSlayer rdajpc@live.com (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

¿se puede urilizar cadenas en un if?

Publicado por xve (56 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

¿se puede urilizar cadenas en un if?

Publicado por aguml (310 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

¿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

¿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