有以下程序
#include
void  main( )

    int a=5,b=4,c=3,d=2;
     if(a>b && b>c)
          printf("%d\n",d);
     else if(c-1>=d)
          printf("%d\n",d+1);
     else
          printf("%d\n",d+2);
}
执行后输出结果是(     ) 。
A、2
B、3
C、4
D、编译时有错,无结果