C 语言反序输出数字(包括负数)205


在 C 语言中,我们可以使用循环和取模运算来反序输出数字,包括负数。

反序输出正数的算法如下:
循环遍历数字的每一位,直到数字为 0。
在每次循环中,提取数字的最后一位(使用取模运算 % 10)。
将提取的数字压入栈或队列中。
将数字除以 10,去掉最后一位。

反序输出负数的算法与此类似,但需要考虑负数的符号:
首先检查数字是否为负数。如果是,则将数字取反并将其保存在变量中。
执行与反序输出正数相同的算法。
在输出数字之前,根据需要添加负号。

以下是 C 语言实现反序输出数字(包括负数)的代码:```c
#include
int main() {
int num;
printf("请输入一个数字:");
scanf("%d", &num);
// 检查数字是否为负数
int isNegative = (num < 0);
// 取反负数
if (isNegative) {
num *= -1;
}
// 初始化一个栈来存储反序数字
int stack[100];
int top = -1;
// 循环遍历数字的每一位
while (num > 0) {
// 压入数字的最后一位到栈中
stack[++top] = num % 10;
// 去掉数字的最后一位
num /= 10;
}
// 输出反序数字
while (top >= 0) {
printf("%d", stack[top--]);
}
// 如果数字为负数,添加负号
if (isNegative) {
printf("-");
}
printf("");
return 0;
}
```

示例:

输入:-123

输出:-321

2024-11-17


上一篇:纳西瑟斯数:C 语言函数实现

下一篇:C 语言:以函数为核心的编程范式