/* Nome: Mario Cognome: Montanari Classe: 3AIN Data: 29/03/2025 */ #include #include #define SIZE 1000+1 using namespace std; void creaFile(const char *nomeFile, const char *nomeFileDestinazione); void invertiRighe(char *str); int main(void) { creaFile("righe.txt", "righe_invertite.txt"); return 0; } void creaFile(const char *nomeFileSorgente, const char *nomeFileDestinazione) { FILE *fr = fopen(nomeFileSorgente, "rt"); if (fr != NULL) { FILE *fw = fopen(nomeFileDestinazione, "wt"); if (fw != NULL) { char str[SIZE]; while (fgets(str, sizeof(str), fr) != NULL) { char *pos; if ((pos = strchr(str, '\n')) != NULL) { *pos = '\0'; } invertiRighe(str); fputs(str, fw); fputs("\n", fw); } fclose(fw); } fclose(fr); } else { perror("Error"); } } void invertiRighe(char *str) { for (char *pl = str, *pr = str + strlen(str) - 1; pl < pr; pl++, pr--) { char temp = *pl; *pl = *pr; *pr = temp; } }