Sv Community El Salvador
Soporte y Tecnología => Programación => C/C++ => Mensaje iniciado por: loke en noviembre 08, 2012, 10:18:33 am
-
Bueno tengo un eercicio que no logro saber como hacerlo, es de comparar 2 cadenas y que diga el mensaje segun la comparacion, son iguales, la primera es mayor que la segunda o la segunda es mayor que la primera.
El problema es que lo tengo que hacer sin usar la libreria string.h si alguien sabe mas o menos como hacer el proceso se lo agradeceria.
-
parsealo no como una string sino como algun otro tipo de dato. hexadecimal, binario, etc.
-
Bueno tengo un eercicio que no logro saber como hacerlo, es de comparar 2 cadenas y que diga el mensaje segun la comparacion, son iguales, la primera es mayor que la segunda o la segunda es mayor que la primera.
El problema es que lo tengo que hacer sin usar la libreria string.h si alguien sabe mas o menos como hacer el proceso se lo agradeceria.
Si la primera es mayor a la segunda en que?? longitud???
Lo que se me ocurre es que recorras ambas cadenas caracter por caracter y hagas la comparacion char por char.
-
Si es caracter por caracter la cosa es que como lo tenes que hacer sin usar la libreria string.h.
-
Master crees que te sirve este ejemplo:
#include<stdio.h>
int scmp(char *,char *);
void main(void)
{
char str1[25],str2[25];
int dif;
clrscr();
printf("\nEnter the first String:");
gets(str1);
printf("\nEnter the second String:");
gets(str2);
dif=scmp(str1,str2); //1
if(dif>0)
printf("%s comes after %s",str1,str2);
else
{
if(dif<0)
printf("%s comes after %s",str2,str1);
else
printf("both the strings are same");
}
}
int scmp(char *s1,char *s2)
{
if(*s1!='\0'&&*s2!='\0') // 2
{
while( *s1-*s2==0 && (*s1!='\0' || *s2!='\0')) // 3
{
s1++;
s2++;
}
}
return(*s1-*s2); // 4
}
No tengo instalado ahorita C pero creo que funciona. Fue copy pasteado de aquí:
http://www.programmingspark.com/2012/03/c-program-to-compare-two-strings.html
La verdad es que ese es uno de los ejercicios que más repiten en los colegios/universidades para aprender el uso de cadenas, si buscas un poco se encuentran varios ejemplos.
-
Aqui les dejo el ejemplo que puso rdoggsv en "vivo": http://ideone.com/lzzzEC (http://ideone.com/lzzzEC). Modifique main() un poquito y al parecer funciona
(http://i.minus.com/ib1Tp3JzLJ3e2f.png)
-
Hey que buena esta esa página Jaime gracias por compartir. En mi caso no tengo en la pc del trabajo instalado C y me sirve bastante ese compilador online