单项选择题

关于以下程序,下列说法中正确的是:
module Learn2_2(a,b,s0,s1,y);
     input a,b;
     input s0,s1;
     output reg y;
     always@(s1 or s0)
              case({s1,s0})
                     2'b00: y=a&b;
                     2'b01: y=a;
                     2'b10: y=b;
                     2'b11: y=a|b;
                     default: y=1'b0;
              endcase
endmodule

A.case语句中缺少break语句,其功能实现会受到影响
B. 该程序输出的表达式为 y=ab+as0+bs1
C.a,b为reg型
D.当a或b发生变化时,always块内的语句会执行