请问这两种统计数字字符的方法有什么区别吗?

#include
int main (void)
{
char str [80];
int k,i;
printf("Enter a string:");
k=0;
while ( ( str [k]=getchar() )!='\n' )
k++;

int count=0;
for (i=0;i<k;i++)
    if(str [i]<='9'&&str[i]>='0')
    count++;

printf ("%d\n",count);

return 0;

}

{
char str [80];
int count ,i;
printf ("Enter a string:");
i=0;
while ((str[i]=getchar())!='\n')
i++;
str [i]='\0';

count=0;
for (i=0;str[i]!='\0';i++)
   if(str[i]<='9'&&str[i]>='0')
   count ++;

   printf ("%d\n",count);

   return 0;

}

思路都是大同小异的,没有什么区别

感觉第二个有点画蛇添足了。。