用C语言编写程序,输入一个正整数,要求以相反的顺序输出该数。例如,输入12345,则输出为54321。 【输入形式】 在一行中输入一个正整数。 【输出形式】 逆序输出该数。 【样例输入1】: 12345 【样例输出1】: 54321 【样例输入2】: 123 【样例输出2】: 321
时间: 2023-11-13 08:12:50 浏览: 83
好的,这是一个简单的算法题目,以下是C语言的实现代码:
```c
#include <stdio.h>
int main()
{
int n, reversed_n = 0;
scanf("%d", &n); // 输入正整数
while (n > 0) {
reversed_n = reversed_n * 10 + n % 10; // 将n的最后一位加到reversed_n上
n /= 10; // 去掉n的最后一位
}
printf("%d", reversed_n); // 输出相反顺序的数
return 0;
}
```
这个程序首先读入一个正整数,然后用一个循环不断将该数的最后一位加到另一个变量`reversed_n`上,并将该位从原数中去掉,重复该过程直到原数变成0为止,最后输出`reversed_n`即可。
相关问题
编写C语言程序输入一个正整数。将各位上为偶数的数取出。并按原来从高位到低位相反的顺序组成一个新的数输出。
以下是C语言程序,实现输入一个正整数,将各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新的数输出:
```c
#include <stdio.h>
int Fun(int n) {
int res = 0, base = 1;
while (n > 0) {
int digit = n % 10;
if (digit % 2 == 0) {
res += digit * base;
base *= 10;
}
n /= 10;
}
return res;
}
int main() {
int n;
printf("请输入一个正整数:");
scanf("%d", &n);
int res = Fun(n);
printf("各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成的新数为:%d\n", res);
return 0;
}
```
用c语言编写一个程序,这个程序作用是将一个正整数转化成二进制输出。
下面是一个将正整数转换为二进制并输出的C语言程序示例:
```c
#include <stdio.h>
void decimalToBinary(int num) {
if (num > 0) {
decimalToBinary(num / 2);
printf("%d", num % 2);
}
}
int main() {
int num;
printf("Enter a positive integer: ");
scanf("%d", &num);
printf("Binary representation: ");
if (num == 0) {
printf("0");
} else {
decimalToBinary(num);
}
printf("\n");
return 0;
}
```
在这个程序中,我们使用递归的方式将一个正整数转换为二进制形式。`decimalToBinary` 函数以整数 `num` 作为参数,首先判断 `num` 是否大于0,如果是,则将 `num` 除以2并调用自身来处理商部分,然后打印余数部分。这样可以保证二进制的输出顺序是从高位到低位。最后,在 `main` 函数中,我们获取用户输入的正整数,并调用 `decimalToBinary` 函数来输出对应的二进制表示。
请注意,如果输入的正整数为0,则直接打印出"0"作为二进制表示。