字符串学废了,有人能说一下这该用什么思路吗

实现输入一个长度不超过60的字符串,从第一个字符开始,每三个字符组成的字符串拆分出来,储存在一个二维数组里,不足三个字符的不储存,最后输出拆分后的字符串和字符串的数量。
例:输入:abcdefg
输出:
abc
def
字符串数量:2

#include  <stdio.h>
int main()
{
    char s[61] = {0};
    char str[20][4] = {0};
    int n=0,m=0,i=0;
    gets(s);
    while(s[i] != 0)
    {
        str[n][m] = s[i];
        m++;
        if(m==2)
        {
            m = 0;
            n++;
        }
        i++;
    }
    for(i=0;i<n;i++)
      printf("%s\n",str[i]);
}