解题思路:n%qy/cs该方法可以求到每个位上的数值,用数组存值
本代码可以算任何小于五位的数,正、负、0;都可以,虽不是最简,但应该是最全,希望各位朋友指导。
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int i = 0, num[5], n, cs = 1, qy = 10;
scanf("%d", &n);
if (n / 100000 == 0) {
//算有几位数
for (; i < 5; i++) {
if (n / cs == 0)break;
num[i] = n % qy / cs;
cs *= 10, qy *= 10;
}
printf("%d\n", i);
//遍历输出每一位上的值
if (n == 0)printf("%d", 0);
else {
int t = i;
for (int j = 0; j < i; j++) {
if (n < 0)printf("%d ", -(num[--t]));
else printf("%d ", num[--t]);
}
}
//逆序输出
int sum = 0;
for (int j = 0; j < i; j++) {
if (cs == 1)break;
sum += num[j] * cs;
cs /= 10;
}
printf("\n%d", sum / 10);
}
return 0;
}
0.0分
0 人评分