关于java输入流的一个小问题
请大家帮忙看一下这个程序,我将num赋值为3之后,想依次输入num次字符串到a,再读取其中的第0个元素,但是第一次读取的却是3,以后读取时便恢复正常,请教各位出现这种现象的原因,以及解决方法,多谢   
 import   
java.io.IOException; 
 import   java.io.BufferedReader; 
 import   java.io.InputStreamReader;   
 public   class   YourTermProject   {         
             public   static   void   main(String[]   args)   { 
 int   num=0; 
 String   a=null;    
 char   c;   
 BufferedReader   in=new   BufferedReader(new   InputStreamReader(System.in)); 
 try{ 
 String   str   =   in.readLine(); 
 num   =   Integer.parseInt(str.trim()); 
 } 
 catch(
IOException   e){ 
 System.exit(1); 
 }   
 while(num--!=0) 
 { 
 try{ 
 a=in.readLine(); 
 } 
 catch(IOException   e){ 
 System.exit(1); 
 } 
 c=a.charAt(0); 
 System.out.println(c); 
 }               
             }   
 }   
 输入和输出: 
 3 
 ABCD 
 3 
 BC 
 B 
 DDD 
 D 
------解决方案--------------------你用命令行试试