最好的草,考虑5行6列的牧场地图 为什么我的结果不对啊

#include<stdio.h>
int s[100][100];
int main()
{
    int r,c,i,j,count1=0,count2=0;
    char s1;
    scanf("%d %d",&r,&c);
    for(i=0;i<r;i++)
    {
        for(j=0;j<c;j++)
        {
            s1=getchar();
            if(s1=='#')
                s[i][j]=1;
        }
    }
    for(i=0;i<r;i++)
    {
        for(j=0;j<c;j++)
        {
            if(s[i][j]==1)
            {
                count1++;
            if(s[i+1][j]==1 || s[i][j+1]==1)
                count2++;
            }
        }
    }
    printf("%d",count1-count2);
}