在C语言中,编写一个程序来计算一个不超过五位的整数的位数是一项基础练习。程序首先请求用户输入一个不超过五位的正整数,然后通过循环逐步处理这个数字,直到它变成零。在每次循环中,程序会取当前数字的个位数,并将这个数存储在一个数组中,同时位数计数器递增。一旦数字变为零,程序就结束循环,并输出位数。
下面是一个示例代码:
#include <stdio.h>
int main() {
int n, i, a[10];
printf("请输入一个不超过5位的正整数:\n");
scanf("%d", &n);
int sum = 0;
for (i = 0;; i++) {
a[i] = n % 10; /*取余存于a[i]中*/
n = n / 10;
sum++; /*位数加一*/
if (n == 0) break;
}
printf("它是%d位数\n", sum);
int j;
printf("它的每一位是:");
for (j = i; j >= 0; j--) /*此时i的值是上个循环的值*/
printf("%d ", a[j]);
printf("\n");
printf("逆序输出每一位:");
for (j = 0; j <= i; j++)<br printf("%d ", a[j]);
return 0;
}
程序开始时提示用户输入一个数字,然后通过取模运算和整除操作逐步获取数字的各个位数,并将它们存储在一个数组中。位数计数器`sum`用于记录数字的位数。当数字完全被处理后,程序输出位数以及数字的每一位。
为了展示程序的运行结果,我们假设输入数字为12345。程序会输出:
它是5位数
它的每一位是:5 4 3 2 1
逆序输出每一位:1 2 3 4 5
通过这种方式,程序不仅能够计算输入数字的位数,还能展示数字每一位的顺序和逆序。这种练习有助于初学者理解基本的循环和数组操作。
温馨提示:答案为网友推荐,仅供参考