elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Comparar letra una letra en un array, con una letra del abcdario
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Comparar letra una letra en un array, con una letra del abcdario  (Leído 4,006 veces)
Naimaderis

Desconectado Desconectado

Mensajes: 74



Ver Perfil
Comparar letra una letra en un array, con una letra del abcdario
« en: 10 Marzo 2017, 03:54 am »

Estoy tratando de construir un programa, al cual yo le de una frase y una letra, y me diga cuantas veces aparece esa letra en la frase. El problema esta en que logro dirigirme a cada letra de la frase, pero al compararla, siempre me la toma como si fueran iguales...

Código
  1.    #include <stdio.h>
  2.    int ContarLetra(char vector[],int largo,char letra);
  3.  
  4.    int main(){
  5.  
  6.    char frase[30] = "AJO Y AGUA";
  7.    int k = ContarLetra(frase,10,'O');
  8.    printf("%d",k);
  9.  
  10.    }
  11.  
  12.    /* Funcion a la cual se le da la frase a contar, el largo de la frase
  13.     y la letra que queremos contar cuantas vecces aparece */
  14.  
  15.    int ContarLetra(char vector[],int largo,char letra){
  16.  
  17.    int contador = 0;
  18.  
  19.    for (int i = 0;i < largo;i++){
  20.  
  21.    printf("%c \n",vector[i]);
  22.  
  23.    if (vector[i] = letra) {
  24.    contador ++;
  25.    }
  26.  
  27.    }
  28.  
  29.    return contador;
  30.  
  31.    }
  32.  


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Comparar letra una letra en un array, con una letra del abcdario
« Respuesta #1 en: 10 Marzo 2017, 04:02 am »

en la linea 23 esta el error

el simbolo

Código:
=

Sirve para asignar, un if, sólo retornará el valor de la derecha y si este es diferente de 0 se tomará como true

Debes usar

Código:
==

Que es el operador de comparación

Otro detalle, en la línea 7 debes pasar el largo +1 debido a que en la línea 19 usas < y no <=... también puedes hacerlo hasta dar con un \0


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Naimaderis

Desconectado Desconectado

Mensajes: 74



Ver Perfil
Re: Comparar letra una letra en un array, con una letra del abcdario
« Respuesta #2 en: 10 Marzo 2017, 04:24 am »

He cambiado lo que me dijiste, y ha quedado maravilloso, muchas gracias.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda sobre almacenar palabra letra a letra
.NET (C#, VB.NET, ASP)
Meyer900 5 9,966 Último mensaje 27 Septiembre 2008, 19:59 pm
por SeniorX
dividir cadena letra por letra
Scripting
morenochico 3 9,074 Último mensaje 3 Julio 2009, 18:46 pm
por leogtz
Problema al comparar variable de valor string con letra SOLUCIONADO
Scripting
<ИΘZIЭ(ŦB> 4 7,145 Último mensaje 23 Agosto 2009, 01:47 am
por leogtz
Identificar letra por letra en un Textbox
Programación Visual Basic
pungados 5 16,017 Último mensaje 31 Agosto 2009, 00:21 am
por SRVAM
Como cifrar letra por letra en C++ « 1 2 ... 6 7 »
Programación C/C++
Royca3 67 65,389 Último mensaje 23 Agosto 2013, 05:32 am
por erest0r
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines