有关数位拆分的简易思考:
一.4位数无输入的任意拆分:
#include<stdio.h>
int main()
{
int a, b;
int n = 4321;
b = n % 100;
a = (n - n % 100) / 100;
printf("a=%d,b=%d\na+b=%d\na-b=%d\na*b=%d\n", a, b, a + b, a - b, a * b);
printf("a/b=%.2f\na%%b=%d\n", (double)a / b, a % b);
return 0;
}
二。有输入的任意拆分:
#include<stdio.h>
#include<math.h>
int main()
{
int x;
int y;
int n, m;
int a, b;
int c, d;
int e, f, g;
scanf_s("%d", &x);
x = fabs(x);
n = x / 1000;
m = x / 100 % 10;
c = x / 10 % 10;
d = x % 10;
e = 10 * m;
f = 100 * c;
g = 1000 * d;
y = n + e + f + g;
a = d * 10 + c;
b = m * 10 + n;
printf("%d\n", y);
printf("%d,%d\n", a, b);
printf("%d\n", a * a + b * b);
return 0;
}
也可只任意 4位数的拆分并不复杂,无非是几种关系式的简易转化