C语言编程实现如下功能,键盘输入一个正整数,编程求出这位数是个几位数,并将其倒着输出。
时间: 2024-03-20 07:45:03 浏览: 24
可以通过循环和取模运算来实现这个功能。具体来说,每次对输入的数取模10,即可得到最后一位数字,然后将这个数字乘以10的对应次幂加到结果上,再将原数除以10继续进行相同的操作,直到原数为0为止。
以下是示例代码:
```c
#include <stdio.h>
int main() {
int n, digit, i, count = 0, reversed = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
// 计算位数
while (n > 0) {
digit = n % 10;
reversed = reversed * 10 + digit;
n /= 10;
count++;
}
printf("该数是%d位数,倒着输出为:", count);
// 输出倒序结果
for (i = 0; i < count; i++) {
digit = reversed % 10;
printf("%d", digit);
reversed /= 10;
}
printf("\n");
return 0;
}
```
运行程序,输入一个正整数,可以得到输出结果:
```
请输入一个正整数:123456
该数是6位数,倒着输出为:654321
```
相关问题
用c语言编程实现,从键盘输入一个正整数,统计该正整数各个数位为3的个.
好的,以下是用 C 语言编写的代码,用于实现从键盘输入一个正整数,统计该正整数各个数位为 3 的个数:
```c
#include <stdio.h>
int main() {
int num, digit, count = 0;
printf("请输入一个正整数:\n");
scanf("%d", &num);
while (num > 0) {
digit = num % 10;
if (digit == 3) {
count++;
}
num /= 10;
}
printf("该正整数各个数位为 3 的个数为:%d\n", count);
return 0;
}
```
首先,我们通过 `scanf` 函数从键盘输入一个正整数 `num`。然后,我们使用 `while` 循环来依次获取该正整数 `num` 的每一位数值,并判断该数值是否为 3。如果该数值为 3,则将计数器 `count` 的值加 1。最后,我们输出计数器 `count` 的值,即为该正整数各个数位为 3 的个数。
C语言编程实现:从键盘输入一个三位的整数,将其个、十、百位倒序生成一个数字输出
以下是实现该功能的C语言代码:
```c
#include <stdio.h>
int main() {
int num, digit1, digit2, digit3, reversedNum;
printf("请输入一个三位整数:");
scanf("%d", &num);
digit1 = num % 10;
digit2 = num / 10 % 10;
digit3 = num / 100;
reversedNum = digit1 * 100 + digit2 * 10 + digit3;
printf("倒序后的数为:%d\n", reversedNum);
return 0;
}
```
输入一个三位整数,分别取出它的个、十、百位上的数字,然后将这三个数字按照百、十、个的顺序组成一个新的整数即可。