Número de letras y espacios que tiene una frase

Este programa lee una frase por medio de cin.getline y con la función strtrok le quita los espacios. Cada vez que corta la cadena, un contador se aumenta. Al final se obtiene la longitud de la cadena sin espacios con la función strlen.

/*Programa para contabilizar el número de letras y de espacios
que tiene una frase */
#include<iostream>
#include<string.h>
using namespace std;

int main()
{
  char frase[100], *parte, frasef[100]={0};
  int lng,spc=0;
  cout<<"Introduce una frase: "; cin.getline(frase, 100, 'n');
  parte=strtok(frase," ");
  strcat(frasef,parte);
  while((parte=strtok(NULL," ")) != NULL)
  {
    strcat(frasef,parte);
    spc++;
  }
  lng=strlen(frasef);
  cout<<"Tu frase tiene "<<lng<<" letras y "<<spc<<" espacios";
  cin.get();cin.get();
  return 0;
}
/*Creado por THEbatzuk*/

3 thoughts on “Número de letras y espacios que tiene una frase

  1. hola me interesa este programa de c++,y me cuesta mucho saber con que utiliza cada función.ej:libreria+función principal,etc.espero alguien me ayude.

  2. hola que te parece este programa. Es mas sencillo pero realiza una función parecida a la del de arriba.

    #include
    #include

    using namespace std;

    int main()
    {
    int a,b=0,c=0,d=0;
    printf(“Escribe un enunciado: n”);
    operacion:;
    {
    if((a=getchar())!=’.’){if (a==’ ‘)b++;}
    {
    if(a!=’a’&&a!=’e’&&a!=’i’&&a!=’o’&&a!=’u’&&a!=’ ‘&&a!=’.’)c++;
    }
    {
    if(a==’a’||a==’e’||a==’i’||a==’o’||a==’u’)d++;
    }
    }
    if(a!=’.’)goto operacion;
    printf(“Escribiste: %i palabrasn”,b+1);
    printf(“Escribiste: %i consonantesn”,c);
    printf(“Escribiste: %i vocales”,d);
    cin.get();cin.get();
    }

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s