目录
1、正整数的正序分解
正序分解整数123->1 2 3
思路:确定位数以定mask;do-while循环每次除法输出一位然后求余+mask/10
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(){
int num;
scanf("%d",&num);
int t=num;
int pos=1;
//确定位数
while(t>9){
t /=10;
pos++;
}
int mask = pow(10,pos-1);
do{
int x=num/mask;
printf("%d",x);
if(mask>9){
printf(" ");
}
num %= mask;
mask /=10;
}while(mask>0);//(num>0) 10->1
return 0;
}
2、最大公约数
思路:辗转相除法。①b==0,返回a ②a/b, a=b, b=余数 ③返回①
3、求序列前N项和
要求:计算序列2/1+3/2+5/3+8/5+...的前N项和。从第2项起,每一项的分子是前一项分子与分母的和&