Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <ctype.h>
  3.  
  4. int main(){
  5.  
  6. char a;
  7. char prec=' ';
  8. int num_caratteri=0,num_parole=0,num_righe=0;
  9. while(a!=EOF){
  10. a=getchar();
  11. if(a=='W'){
  12. break;
  13. }
  14. if(a==' '){ /*controlla se dato a=' 'il precedente e' una lettere e di conseguenza incrementa o meno il contatore num_parole*/
  15. if(isalpha((int)prec)){
  16. num_parole++;
  17. prec=a;
  18. continue;
  19. }
  20. else{
  21. prec=a;
  22. continue;
  23. }
  24. }
  25. if(a=='\t'){ /*controlla se prima del '\t' ci sia una parola o meno*/
  26. if(isalpha((int)prec)){
  27. num_parole++;
  28. prec=a;
  29. continue;
  30. }
  31. else{
  32. prec=a;
  33. continue;
  34. }
  35. }
  36. if(a=='\n'){ /*controlla se prima del carattere '\n' ci sia una parola o meno*/
  37. if(isalpha((int)prec)){
  38. num_parole++;
  39. num_righe++;
  40. prec=a;
  41. continue;
  42. }
  43. else{
  44. num_righe++;
  45. prec=a;
  46. continue;
  47. }
  48.  
  49. }
  50. num_caratteri++; /*in assenza dei casi precedenti vengono contati il numero di caratteri delle parole*/
  51. prec=a; /*la variabile prec viene aggiornata al valore corrente di a mentre a assumera con getchar il carattere successivo*/
  52. }
  53. printf("num_caratteri=%d,num_parole=%d,num_righe=%d\n",num_caratteri,num_parole,num_righe);
  54. return 0;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement