Per esercitarmi un po' col C tra una (noiosa) pagina di manuale e l'altra provo a risolvere problemi come questi:
http://ioi.dsi.unimi.it/selezioni/struzzo.html

Qualcuno mi sa dire perchè il conteggio dei punri cardinali (quello all'interno del while) non funziona a dovere?

codice:
#include <stdio.h>
#include <stdlib.h>
		
main() {
int counter[4],i, effettivoX, effettivoY;
char sposta[100000];


    printf("Dammi la coordinata");
    scanf("%s", &sposta);
  
//printf("%s", sposta);
i=0;

while (sposta[i] !='*'){

switch(sposta[i]){
case 'N':
   counter[0]=counter[0]+1;
   break;   
case 'S':
   counter[1]=counter[1]+1;
   break;   
case 'O':
   counter[2]=counter[2]+1;
   break;   
case 'E':
   counter[3]=counter[3]+1;
   break;   
default:
   break;   
}
i=i+1;

}


//printf("%d", counter[0]);---->SE GUARDATE COSA STAMPA QUESTO VEDETE CHE c'è QUALCOSA CHE TOCCA


effettivoY=counter[0]-counter[1];
effettivoX=counter[2]-counter[3]; 
printf("%d", effettivoX*effettivoX+effettivoY*effettivoY );
printf("%d", counter[0]);


system("pause");
}