C语言编程题:统计正整数[M,N]之间含有2个位上的数字为6的所有整数个数,且M<N。

编程实现:统计正整数[M,N]之间含有2个位上的数字为6的所有整数个数,且M<N。
示例:
输入格式:100 1000
输出格式:26

img

img

#include

int havenumsix(int i)
{
int t ;
int num = 0;
while(i)
{
t = i%10;
if(t == 6)
{
num++;
}
i = i/10;
}
if(num == 2)
return 1;

return 0;
}
int main()
{

int m;
int n;
int i;
int num = 0;

printf("请输入m\n");
scanf("%d",&m);

printf("请输入n\n");
scanf("%d",&n);

if(m>n)
    {   
    //或者自己进行交换
    printf("输入错误\n");
    return;
    }

for(i=m;i<=n;i++)
    {
        if(havenumsix(i))
            num++;
    }
printf("俩个位上带有数字6的数字有%d个\n",num);
return 0;

}

我结果是27 不是26 不知道差在哪里