回复 6楼 qq1023569223
//C++我不熟悉,C语言的你看看,一样的#include <stdio.h>
int main()
{
int num=0,len=0,i=0;
int a[10]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}; //用来保存数字的各位数,从个位开始到高位
scanf("%d",&num); //因int的限制,至多请输入9位数,更多可自己改成long long
for(;num!=0;i++) //求数字的各位数和长度
{
a[i]=num%10; //取最低位数字
num/=10; //去掉最低位,如想不明白,请在纸上比划
len++; //长度自增
}
//输出
printf("result:%d\t",len);
for(i=0;a[i]!=-1;i++)
{
printf("%d",a[i]);
}
printf("\n");
return 0;
}
这个我看得懂,但是你这个程序的话就只适合于正整数,负整数和零都是是不适合的啊,还有我把你的程序稍稍改了一下,C++的格式
include <iostream>
using namespace std;
int main()
{
int num=0,len=0;
int a[10];
cin>>num;
for(int i=0;num!=0;i++) //求数字的各位数和长度
{
a[i]=num%10; //取最低位数字
num/=10; //去掉最低位,如想不明白,请在纸上比划
len++; //长度自增
}
cout<<len<<endl;
for(i=0;i<len;i++)
{
cout<<a[i];
}
return 0;
}
不过都是不适合负整数和零