整数分解
Posted lalala_dxf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了整数分解相关的知识,希望对你有一定的参考价值。
题目:输入一个整数,正序输出它的每一个数字。
如 输入:12345 输出:1 2 3 4 5
输入:700 输出:7 0 0
注意最后一个数字后无空格。
代码如下:
#include<stdio.h>
int main(){
//输入
int input;
scanf("%d",&input);
int mask=1;
//重新创建一个变量用来存input值
int testValue = input;
//循环:当testValue大于9或大于等于10,满足循环要求
while(testValue>9){
//如果整数有5位,那么mask最终就会为10000,用来做最开始的除数
testValue /= 10;
mask *= 10;
}
// printf("mask = %d,testValue = %d",mask,testValue);
//可以用来测试当前代码mask值
do{
//用来将最高位分离开:如1434/1000=1; 434/100=4; 34/10=3;4/1=4;
int receive = input/mask;
//使最后一个数字后没有空格
if(mask>9){
printf(" ");
}
//用来去除最高位1434%1000=434;。。。
input = input%mask;
//缩小mask,求整数对应位数的数字
mask /= 10;
} while(mask>0);
return 0;
}
以上是关于整数分解的主要内容,如果未能解决你的问题,请参考以下文章