猜拳游戏,为什么输入1,总是输(请问是我的原因,还是随机数的原因)

#include
#include
#include
#include
void main(){
int a,b;
printf("游戏规则:1代表石头,2代表剪刀,3代表布\n");
scanf("%d",&a);
srand((unsigned int)time(NULL));
b=rand();
if(a==1)
if(b
printf("电脑出了石头\n你出了石头\n平手\n");
else
{
if(b<=2*RAND_MAX/3)
printf("电脑出了布\n你出了石头\n你输了\n");
else
printf("电脑出了剪刀\n你出了石头\n你赢了\n");
}
if(a==2)
if(b
printf("电脑出了石头\n你出了剪刀\n你输了\n");
else
{
if(b<=2*RAND_MAX/3)
printf("电脑出了布\n你出了剪刀\n你赢了\n");
else
printf("电脑出了剪刀\n你出了剪刀\n平手\n");
}
if(a==3)
if(b
printf("电脑出了石头\n你出了布\n你赢了\n");
else
{
if(b<=2*RAND_MAX/3)
printf("电脑出了布\n你出了布\n平手\n");
else
printf("电脑出了剪刀\n你出了布\n你输了\n");
}
if(a<0||a>3)
printf("请重新输入!\n");
}

RAND_MAX是什么???