方法一
首先用一个函数算出数的位数,然后一边除一边输出。
代码语言:javascript复制#include<stdio.h>
int f(int n)
{
int i=0;
while(n!=0)
{
n/=10;
i ;
}
return i;
}
int main()
{ int n;
int j;
int power=1;
scanf("%d",&n);
for(j=1;j<f(n);j )
{
power*=10;
}
while(n!=0)
{
printf("%d ",n/power);
n%=power;
power/=10;
}
}
方法二
几个月后,再次看到这里,想到了另一种方法。
把数变成字符,事情就变得简单许多。
代码语言:javascript复制#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
int num,i;
scanf("%d",&num);
string s=to_string(num);
for(i=0;s[i];i )
{
if(i!=0)
printf(" ");
printf("%c",s[i]);
}
}
方法三
今天又想到用C语言写一个,不变了,直接用字符串去存
代码语言:javascript复制#include<stdio.h>
int main()
{
char a[100];
int i;
while(scanf("%s",a)!=EOF)
for(i=0;a[i];i )
printf("%c ",a[i]);
}