主要是这第二条要求怎么打,希望过程越简单越好最好能有点批注啊,谢谢大家了
求几位数,就是循环除以10,看循环几次后变为0,就是几位数
分别输出每一位数字,可以使用递归,通过不断求余,倒序输出
逆序输出可以不断求余,然后余数乘以10,形成倒序数
代码如下:
void func(int n)
{
if(n<10)
printf("%d ",n);
else
{
func(n/10);
printf("%d ",n%10);
}
}
int main()
{
int n,m,count= 0;
scanf("%d",&n);
m = n;
while(m>0)
{
count++;
m/=10;
}
printf("%d为%d位数\n",n,count);
//
printf("每位数字是:");
func(n);
printf("\n");
//
m=n;
count = 0;
while(m>0)
{
count = count*10 + m%10;
m/=10;
}
printf("倒序数为:%d\n",count);
}