Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/11/2015, 07:01
charliowow
 
Fecha de Ingreso: noviembre-2014
Mensajes: 11
Antigüedad: 9 años, 5 meses
Puntos: 0
Error con vectores?

Hola muy buenas a todos estoy haciendo este problema y no me acabo de salir. Tengo que hacer un programa que me diga cuantos caracteres tiene cada frase que se introduce por teclado, cuando no queramos introducir mas frases finalizamos con un punto. Tengo el cuerpo bien hecho diria pero no se si es ala hora de introducir los valores en el vector o que pasa exactamente que el resultado me sale desplazado en 1, es decir, en mi respuesta del ejercicio salen en la frase 1 los caracteres de la frase 2 i en la frase 2 los caracteres de la 3 , evidentemente la ultima frase me da un erro, es como si tubiera el vector desplazado pero me da la sensacion de que esta bien. Os paso el codigo. Muchisimas Gracias

Código C:
Ver original
  1. #include <stdio.h>
  2. void main(){
  3.  
  4. char letra;
  5. int caracter = 0;
  6. char frase[50];
  7. int c = 0;
  8. int z = 0;
  9.  
  10. printf("\n\nIntrodueix un text amb les linies que vulguis per finalitzar introdueix un punt\n\n");
  11.  
  12.  
  13.  
  14. do{
  15.   scanf("%c", &letra);
  16.  
  17.  if (letra != 32 || letra != 46){
  18.     caracter++;
  19.  }
  20.  if (letra == 10){
  21.  
  22.     frase[c] = caracter;
  23.     caracter = 0;
  24.     c++;
  25.  }
  26.  
  27. }while(letra != '.');
  28.  
  29. for (z = 0; z <= c; z++){
  30.     printf("\nLa frase %d te %d caracters\n", z+1, frase[z]);
  31. }
  32.  
  33. }