用c语言编写,输入一个正整数,使用while循环实现输出它的倒序数
时间: 2023-05-19 08:02:23 浏览: 140
以下是用 C 语言编写,输入一个正整数,使用 while 循环实现输出它的倒序数的代码:
```c
#include <stdio.h>
int main() {
int num, reverse = 0;
printf("请输入一个正整数:");
scanf("%d", &num);
while (num > 0) {
reverse = reverse * 10 + num % 10;
num /= 10;
}
printf("该数的倒序数为:%d\n", reverse);
return 0;
}
```
希望能对您有所帮助!
相关问题
用C语言编写一个循环函数,实现将任意的十进制正整数转化为八进制数
可以使用以下代码实现:
```c
#include <stdio.h>
void decToOctal(int decimalNum) {
int octalNum[100], i = 0;
while(decimalNum != 0) {
octalNum[i] = decimalNum % 8;
decimalNum /= 8;
i++;
}
printf("转换为八进制数为: ");
for(int j = i - 1; j >= 0; j--)
printf("%d", octalNum[j]);
}
int main() {
int decimalNum;
printf("请输入一个十进制正整数: ");
scanf("%d", &decimalNum);
decToOctal(decimalNum);
return 0;
}
```
这个程序中,我们首先定义了一个 `decToOctal` 函数,它的参数是一个十进制正整数。在函数内部,我们使用一个循环来不断将该数除以8,并将余数存储在一个数组 `octalNum` 中,直到该数变为0为止。最后,我们倒序遍历该数组,并输出每个元素,即可得到该十进制正整数的八进制表示。
在 `main` 函数中,我们通过 `scanf` 函数获取用户输入的十进制正整数,并调用 `decToOctal` 函数将其转换为八进制数。
C语言编写程序,将十进制正整数转成十六进制字符串输出。
以下是一个示例程序:
```c
#include <stdio.h>
void decimal_to_hex(int num) {
char hex[16];
int i = 0;
while (num != 0) {
int remainder = num % 16;
if (remainder < 10) {
hex[i++] = remainder + '0';
} else {
hex[i++] = remainder - 10 + 'A';
}
num /= 16;
}
printf("0x");
for (int j = i - 1; j >= 0; j--) {
printf("%c", hex[j]);
}
printf("\n");
}
int main() {
int num = 123456;
decimal_to_hex(num);
return 0;
}
```
该程序定义了一个名为 `decimal_to_hex` 的函数,该函数接收一个十进制正整数并将其转换为十六进制字符串。在函数中,我们使用了一个字符数组 `hex` 来保存十六进制字符串,同时使用了一个循环来进行十进制到十六进制的转换,最后再将结果倒序输出即可。
在 `main` 函数中,我们调用了 `decimal_to_hex` 函数并将一个整数作为参数传递给它,然后输出转换后的十六进制字符串。
阅读全文