c 语言逆序输出整数reverse
时间: 2023-07-13 13:19:55 浏览: 187
你可以使用循环和取模操作来逆序输出一个整数。以下是一个简单的示例代码:
```c
#include <stdio.h>
int main() {
int num, remainder, reversed_num = 0;
printf("Enter an integer: ");
scanf("%d", &num);
while (num != 0) {
remainder = num % 10; // 取模操作,得到最低位的数字
reversed_num = reversed_num * 10 + remainder; // 将数字添加到逆序数字中
num /= 10; // 削掉最低位的数字
}
printf("Reversed number: %d\n", reversed_num);
return 0;
}
```
在这个例子中,我们首先使用 `scanf` 函数从用户那里获取一个整数。然后,我们在一个 `while` 循环中执行以下操作:
1. 使用取模操作 (`%`) 得到最低位的数字
2. 将该数字添加到逆序数字中
3. 将原数字削掉最低位的数字
最后,我们输出逆序数字。
相关问题
c 语言逆序输出数字
C语言中逆序输出数字通常指的是将整数或字符串从高位到低位(从右向左)进行打印。这里有一个简单的例子,我们将展示如何逆序输出一个整数:
```c
#include <stdio.h>
// 函数声明
void reversePrint(int num);
int main() {
int inputNum = 12345;
printf("输入的数字是 %d\n", inputNum);
reversePrint(inputNum);
return 0;
}
// 函数实现:逆序打印整数
void reversePrint(int num) {
while (num != 0) {
// 取出最低位并乘以10的相应次方
int lastDigit = num % 10;
printf("%d", lastDigit); // 输出当前位
// 移除最低位
num /= 10;
}
}
```
在这个例子中,`reversePrint`函数通过不断地取余数操作获取每一位数字,然后乘以10的相应次方(因为每次`num /= 10`会去掉最低位),最后将这些数字按顺序输出。
如果你想逆序输出字符串,可以使用类似的方法处理字符数组:
```c
#include <stdio.h>
#include <string.h>
void reversePrint(char str[]) {
int len = strlen(str);
for (int i = len - 1; i >= 0; i--) {
printf("%c", str[i]);
}
}
int main() {
char str[] = "Hello, World!";
printf("原始字符串是 %s\n", str);
reversePrint(str);
return 0;
}
```
这两个函数都会逆序显示给定的数值或字符串。
c 语言逆序输出数组
要逆序输出一个数组,可以使用循环遍历数组并倒序输出元素。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
printf("Original array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\nReversed array: ");
for (int i = n - 1; i >= 0; i--) {
printf("%d ", arr[i]);
}
return 0;
}
```
输出结果为:
```
Original array: 1 2 3 4 5
Reversed array: 5 4 3 2 1
```
阅读全文