程序功能:输入长整数 n,从高位开始逐位分离并输出。用c语言且只用循环
时间: 2024-03-24 20:36:56 浏览: 53
超长整数处理 C语言编写
5星 · 资源好评率100%
好的,以下是一个只使用循环的 C 语言代码示例,可以实现这个功能:
```c
#include <stdio.h>
int main() {
long long n;
printf("请输入一个长整数:");
scanf("%lld", &n);
int len = 0, temp = n;
while (temp > 0) {
len++;
temp /= 10;
}
while (len > 0) {
long long div = 1;
for (int i = 1; i < len; i++) {
div *= 10;
}
printf("%lld\n", n / div);
n %= div;
len--;
}
return 0;
}
```
这个程序首先定义了一个长整数变量 `n` 来存储用户输入的长整数,然后使用 `scanf` 函数来读取用户输入。接着,我们使用一个 `while` 循环来计算 `n` 的位数,并将结果保存在变量 `len` 中。在第二个 `while` 循环中,我们不断地从高位到低位分离每个数字,并使用 `printf` 函数将其输出。在循环中,我们使用一个变量 `div` 来计算当前位数对应的除数,然后使用 `/` 和 `%` 运算符来分离每个数字。在每次循环结束后,我们将 `len` 减 1,以便下一次处理下一位数字。
阅读全文