为啥不需要用scanf来输入一个数?

8进制到10进制
#include

int main()
{

int i=0;                8进制到10进制
int n=0;
char s[20];

gets(s);
while(s[i]!='\0')
{
    n=n*8+s[i]-'0';
            i++;
}
printf("%d",n);
return 0;

}
为啥不需要用scanf来输入一个数?

gets函数

可以用scanf,这个代码可以将非数字也计算出一个数字,没有scanf严谨,唯一的好处是自己手写的转换,就当练手。

gets不是输入字符串了吗
输入函数有好几个
scanf
getchar
gets
如果你用c++的话还有cin
不要只盯着scanf