C语言学习 7-5 输出整数各位数字
·
7-5 输出整数各位数字
本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。
输入格式:
输入在一行中给出一个长整型范围内的非负整数。
输出格式:
从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。
输入样例:
123456
输出样例:
1 2 3 4 5 6
我也是刚学,可能程序会很繁琐各位见谅。
#include<stdio.h>
int main()
{
long n,count=0,m,f,flag1,flag2;//注意题目要求为长整型,这里我卡住了半天就是没好好看题,如果你也和我一样可能会报浮点错误的报错。
scanf("%ld",&n);
m=n;
while(233)//负责计算输入的数字有多少位
{
n/=10;
count++;
if(n==0)
{
break;
}
}
n=m;
flag1=pow(10,count);//初始化一个10的count次方
flag2=flag1/10;//这个要比flag1小10倍用来做第二步的计算出每个位置的数字是几
for(int i=1;i<=count;i++)//计算输出部分
{
if(flag2==0)//flag2==0则说明当前是最后一个数字,输出过后就可以结束程序了
{
f=(m%flag1);
printf("%ld ",f);
break;
}
f=(m%flag1)/flag2;
flag1/=10;
flag2/=10;
printf("%ld ",f);
}
return 0;
}
更多推荐



所有评论(0)