#include #define CHAR '*' /* Se c e' (un carattere che rappresenta) una lettera maiuscola ('A', ..., 'Z') restituisce la corrispondente lettera minuscola ('a', ... , 'z'). Altrimenti, restituisce c stesso */ int toSmall(int c){ if('A' <= c && c <= 'Z') return c + ('a' - 'A'); else return c; } /* restituisce 1 se c e' una vocale, 0 altrimenti */ int isVowel(int c){ c = toSmall(c); if(c == 'a' || c== 'e' || c == 'i' || c== 'o' || c == 'u') return 1; else return 0; } /* Se c e' una lettera dell'alfabeto inglese, restituisce la codifica di c ottenuta con la seguente regola: a ---> z, b ---> y, c ---> x, .... x ---> c , y ---> b, z ---> a A ---> Z, ..... , Z ---> A Altrimenti restituisce c. */ //int code(int c) /* se c e' una lettera dell'alfabeto, restituisce la lettera ottenuta ruotando c di r posizioni, altrimenti restituisce c */ //int rotate(int c, int r) /* Esercizio 1 */ int main1(){ // programma del testo int c; c = getchar(); /* lettura di un carattere da standard input */ while(c != EOF){ putchar(c); /* scrittura di un carattere da standard output */ c = getchar(); } printf("\nFine input\n"); return 0; } int main1a(){ int c; c = getchar(); while(c != EOF){ if(c == '\n'){ putchar('-'); putchar('>'); } putchar(c); c = getchar(); } printf("\nFine input\n"); return 0; } /* Esercizio 2 */ int main2(){ int c; c = getchar(); while(c != EOF){ c = toSmall(c); putchar(c); c = getchar(); } return 0; } /* Esercizio 3 */ int main3(){ int c; c = getchar(); while(c != EOF){ if(isVowel(c)) putchar(CHAR); else putchar(c); c = getchar(); } return 0; }