C语言,输入一个整数,从高位开始逐位分割并输出它的各位数字
发布网友
发布时间:2022-06-15 01:59
我来回答
共4个回答
热心网友
时间:2023-09-25 07:01
1、首先,定义三个整型变量,保存整数、各位上的数、整数的位数。
2、给整型变量p和sum,赋初值为0。
3、读入一个整数,保存在变量n中。
4、用while语句判断,n是否等于0,如果不等于0则执行语句体。
5、对整数n用10求余,余数保存在变量p中,即为各位上的数字。
6、改变整数变量n的值,使其成为原来的十分之一,即减少一位。
7、统计整数位数的变量sum自加1,实现位数的统计。
8、运行程序,输入一个整数后,计算机倒序输出各位上的数字,并且输出整数的总位数。
热心网友
时间:2023-09-25 07:01
#include<stdio.h>
#define KON 50
int main(void)
{
long bowle, i;
int pan[KON] = {0};
scanf("%ld", &bowle);
for(i=0;bowle>10;i++){
pan[i] = bowle%10;
bowle /= 10;
}
pan[i] = bowle;
for(;i>=0;i--)
printf("%d\t", pan[i]);
return 0;
}
热心网友
时间:2023-09-25 07:02
int main()
{int Num;
printf("输入整数\n");
scanf("%d",&Num);
int Num_get=1,i=1;
while( Num_get!=0)
{Num_get=Num%(double pow(10,i);
printf("%d\n",Num_get);
i++;
}
return 0;
}
没有编译,你试一下,有什么问题再问
热心网友
时间:2023-09-25 07:03
main{
int x,t
scanf(%d,x);
x=x>0?x:-x
while(x)
{
t=x%10;
x=x/10;
printf(%d,t);
}
}
如果还要求输出的时候是从高位到低位的顺序的话
main{
int x,y,t
scanf(%d,x);
x=x>0?x:-x;
y=0;
while(x)
{
t=x%10;
x=x/10;
y=y*10+t;
}
printf(%d,y);
return(0)
}追问那个问号是啥意思,新手刚学不懂
追答x=x>0?x:-x 这句的意思就是求X的绝对值。
如果x>0 X就等于X 否者就在X之前加一个-号 这样就负负得正