#include "stdio.h"
#include "math.h"
void main ()
{
int a,b=0,c,d;
printf("input the a:");
scanf("%d",&a);
while (a!=0)
{
a=a/10;
b=b++;
}
c=pow(10,b);
scanf("%ld",&c);
do
{
d=a/c;
printf("%d\n",d);
d=a%c;
c=c-1;
}
while(d!=0);
printf("\n");
}
1、首先,定义三个整型变量,保存整数、各位上的数、整数的位数。
2、给整型变量p和sum,赋初值为0。
3、读入一个整数,保存在变量n中。
4、用while语句判断,n是否等于0,如果不等于0则执行语句体。
5、对整数n用10求余,余数保存在变量p中,即为各位上的数字。
6、改变整数变量n的值,使其成为原来的十分之一,即减少一位。
7、统计整数位数的变量sum自加1,实现位数的统计。
8、运行程序,输入一个整数后,计算机倒序输出各位上的数字,并且输出整数的总位数。
如果没学数组的话:
#include<iostream>
using namespace std;
void showNumber(int a);
void main()
{
int num = 0;
cout<<"Please enter a number:";
cin>>num;
showNumber(num);
}
void showNumber(int a)
{
while((a/10)!=0)
{
int b = a%10;
cout<<b<<endl;
a = a/10;
}
cout<<a<<endl;
}
是这个意思吗
追问最高位到最低位,你那个完全看不懂啊,不过谢谢了,能以初学者的方式改改吗
3
4
2
3
4
#include<iostream>
using namespace std;
void showNumber(int a);
void main()
{
int num = 0;
//cout<<"Please enter a number:";
printf("Please enter a number:");
//cin>>num;//input number
scanf("%d",&num);
showNumber(num);//print the number
}
void showNumber(int a)
{
int c = 10;
while((a/c)!=0)
{
c = c*10;
}
c = c/10;
while(c>1)
{
int b = a/c;
//cout<<b<<endl;
printf("%d\n",b);
a = a%c;
c = c/10;
}
//cout<<a<<endl;
printf("%d\n",a);
}