Una delle "regole" è dire sempre il tipo di errore che presenta.

Non capisco perchè il primo while(), a che ti serve? Stessa cosa per la variabile n...

Ti stai complicando le cose. ^^

codice:
import java.util.Scanner;
public class QuantiPari {
  public static void main (String [] args) {
    Scanner input = new Scanner(System.in);

    System.out.println("Immettere una sequenza di interi di almeno un elemento " +
    				   "terminata da un non-intero:");
					   
    int cont=0;
    int k=0;

    while(input.hasNextInt()) {
 	k = input.nextInt();		
        if ((k % 2) == 0)
          cont = cont + 1;
    }
    
    System.out.println("Il numero dei numeri pari e':" + cont);
  }
}