Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/04/2010, 19:42
Fenris
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Porfisss ayuda con problema de cadenas

Hola

Porque almacenas la variable letra en un array, debería ser solo una variable de tipo char.
Código C:
Ver original
  1. char letra;
Lo otro que observo es que en el scanf donde capturas el valor de la variable letra no colocas el simbolo ampersand que es necesario para capturar el valor.
Código C:
Ver original
  1. scanf("%c",letra);

Asi me quedo despues de unos cambios.

Código C:
Ver original
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<stdlib.h>
  4. #include<conio.h>
  5.    int main(){
  6.    char cad[25];
  7.    char letra;
  8.    int flag =0;
  9.    int i=0, strpos;
  10.    clrscr();
  11.      printf("introduce una cadena de 25 caracteres:\n");
  12.      gets(cad);
  13.      printf("introduce un caracter a buscar:\n");
  14.      scanf("%c",&letra);
  15. //encontrar la primera ocurrencia de un caracter dentro de la cadena.
  16.  
  17.       for(i=0;(i<25) && (cad[i]!='\0') ;i++){
  18.     if(cad[i]==letra){
  19.        flag = 1;
  20.        strpos = i;
  21.        break;
  22.     }
  23.       }
  24.  
  25.       if (flag == 1){
  26.       printf("la primera ocurrencia de la letra %c se encuentra en la posicion %d de la cadena %s :\n",letra,strpos, cad);
  27.       getch();
  28.       }else{
  29.       printf("No se encontraron ocurrencias de %c en %s:\n", letra,cad);
  30.       getch();
  31.       }
  32.  
  33.      return 0;
  34.       }

Prueba y comenta
Saludos

Última edición por Fenris; 07/04/2010 a las 20:18