设计一个c语言算法:输入一个5位数以内的正整数,完成以下操作:1.判断他是几位数。2.按序输出其各位数字。3.逆序输出其各位数字。
时间: 2024-09-26 15:05:27 浏览: 72
c代码-读取一个正整数,显示其位数。
5星 · 资源好评率100%
设计一个C语言算法来完成这个任务,我们可以使用循环结构来分别处理每一位数字,并添加一些条件判断。以下是一个简单的步骤描述:
```c
#include <stdio.h>
// 函数声明
void printDigits(int num, int* digits, int len); // 输出数字序列
void reversePrint(int num, int* digits, int len); // 输出逆序数字序列
int main() {
int num, length = 0;
printf("请输入一个5位数内的正整数:");
scanf("%d", &num);
// 判断数字位数并保存每一位到数组digits中
while (num > 0) {
digits[length] = num % 10; // 取余得到最后一位
length++; // 数组长度加一
num /= 10; // 移除最后一位
}
// 输出原顺序数字
printf("原序数字序列:");
printDigits(num, digits, length);
// 输出逆序数字
printf("逆序数字序列:");
reversePrint(num, digits, length);
return 0;
}
// 辅助函数:输出数字序列
void printDigits(int num, int* digits, int len) {
for (int i = 0; i < len; i++) {
printf("%d", digits[i]);
}
printf("\n");
}
// 辅助函数:逆序输出数字序列
void reversePrint(int num, int* digits, int len) {
for (int i = len - 1; i >= 0; i--) {
printf("%d", digits[i]);
}
printf("\n");
}
阅读全文