关于if 语句求助!
程序代码:
void draw(int pen,int dir,int step,int arrayDir[],int arrayTotal[][50])
{
int i=0;
if (dir%4==0)
{
if(pen==2)
{
for (i=0;i<=step;i++)
{
arrayTotal[arrayDir[0]][arrayDir[1]+i]+=1;
}
arrayDir[1]+=step;
}
}
if (dir%4==1||-3)
{
if (pen==2)
{
for(i=0;i<=step;i++)
{
arrayTotal[arrayDir[0]+i][arrayDir[1]]+=1;
}
arrayDir[0]+=step;
}
}
if (dir%4==3||-1)
{
if (pen==2)
{
for(i=0;i<=step;i++)
{
arrayTotal[arrayDir[0]-i][arrayDir[1]]+=1;
}
arrayDir[0]-=step;
}
}
if (dir%4==2||-2)
{
if (pen==2)
{
for(i=0;i<=step;i++)
{
arrayTotal[arrayDir[0]][arrayDir[1]-i]+=1;
}
arrayDir[1]-=step;
}
}
无论dir是什么,比如(0),都会在每个if中运行,好像无论什么情况 dir%4都是成立的!









用switch吧

