Foros del Web » Programación para mayores de 30 ;) » Programación General »

c++ programa q detecta el # de letras a en una frase

Estas en el tema de c++ programa q detecta el # de letras a en una frase en el foro de Programación General en Foros del Web. me podrian explicar las funciones de este programa detecta las letras a de una frase #include <stdio.h> #include <conio.h> #include <string.h> int buscar(char *cadena,char *subcadena ...
  #1 (permalink)  
Antiguo 29/09/2007, 20:12
 
Fecha de Ingreso: septiembre-2007
Mensajes: 3
Antigüedad: 16 años, 7 meses
Puntos: 0
Exclamación c++ programa q detecta el # de letras a en una frase

me podrian explicar las funciones de este programa detecta las letras a de una frase

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


int buscar(char *cadena,char *subcadena ){
char *tmp = cadena;
char *pdest;
int bus = 0, pos;
int len = strlen(subcadena);
while(1){
pdest = strstr( tmp, subcadena );
if( !pdest ) break;
pos = pdest - tmp;
tmp += pos + len;
bus++;
}
return bus;
}


main(){
clrscr();

char a[20],b[1];
int x;

printf("Teclea una frase\n");
gets(a);
printf("Que letra quieres identificar\n");
gets(b);

x=buscar(a,b);

printf("El numero de veces que aparece %s es %d\n",b,x);

getch();
return 0;
}
  #2 (permalink)  
Antiguo 03/10/2007, 10:16
 
Fecha de Ingreso: febrero-2007
Mensajes: 450
Antigüedad: 17 años, 2 meses
Puntos: 3
Re: c++ programa q detecta el # de letras a en una frase

Qué es exactamente lo que preguntas ?

Según parece te dice cuantas veces aparece una subcadena (una sola letra) dentro de otra, aunque hay alguna cosa en esa subrutina que me parece que no funcionará del todo bien.

Además ten cuidado con el uso de librerias que no son ANSI C!! y mas si no son imprescindibles.

Esa misma función se puede hacer de una forma mucho más sencilla.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:58.