cAPS lOCK

Gabriele ha scritto un messaggio per Giorgio, ma arrivato alla fine si è accorto con orrore che tutto il testo ha le minuscole e le maiuscole invertite per colpa del caps lock attivo.
Piuttosto che riscrivere tutto daccapo, Gabriele decide di chiederti di creare un programma che, preso il testo del messaggio, converta le maiuscole in minuscole e viceversa.
Aiuta Gabriele ad aggiustare il messaggio!

Dati di input

Il file input.txt è composto da due righe.

  1. La prima riga contiene l’unico intero N, il numero di caratteri del testo.
  2. La seconda riga contiene il testo del messaggio.

Dati di output

Il file output.txt è composto da un’unica riga contenente il testo corretto.

Esempi di input/output

input.txt output.txt
41
eHI, TUTTO BENE? tI VA UNA PIZZA STASERA?
Ehi, tutto bene? Ti va una pizza stasera?
23
nA nA nA nA nA bATmAN!!
Na Na Na Na Na BatMan!!

/*
     www.valcon.it
     OIS - cAPS lOCK
*/
#include
#include  // atol()
#include   // islower() - isupper() - tolower() - toupper()

#define CMAX 10000

int main() 
{		
    long N;
    char buffer[CMAX+1];
    
    FILE* fin =fopen( "input.txt", "r");
    FILE* fout=fopen("output.txt", "w");
    
    fgets(buffer, 20    , fin); N=atol(buffer);
    fgets(buffer, CMAX+1, fin);      
    
	for(long i=0; i < N; i++)	
	{
		char c=buffer[i];
		
		     if(islower(c)) buffer[i]=toupper(c);
		else if(isupper(c)) buffer[i]=tolower(c);		
	}
    fprintf(fout, "%s", buffer);
    return 0;
}