好的,以下是程序的中文描述: 1. 从键盘输入一个三位正整数。 2. 判断输入的数是否为三位正整数,如果不是则输出-1。 3. 如果是三位正整数,则将其反向输出。C语言
时间: 2024-04-29 21:23:35 浏览: 91
代码如下:
```
#include <stdio.h>
int main() {
int num, reverse = 0;
printf("请输入一个三位正整数:");
scanf("%d", &num);
if (num < 100 || num > 999) {
printf("-1");
return 0;
}
while (num != 0) {
reverse = reverse * 10 + num % 10;
num /= 10;
}
printf("反向输出为:%d", reverse);
return 0;
}
```
解释:
1. 使用 `scanf` 函数从键盘读入一个整数 `num`。
2. 判断 `num` 是否为三位正整数,如果不是则输出 -1 并结束程序。
3. 使用循环将 `num` 反向输出,具体做法是每次取出 `num` 的个位并加到 `reverse` 的末尾,然后将 `num` 的个位删除。这里使用了整除和取模运算。
4. 输出反向输出的结果 `reverse`。
相关问题
python:【问题描述】 编写一程序,从键盘输入输入一个三位正整数,然后反向输出对应的数,如果输入的数不是三位正整数,则输出-1。 【输入形式】 从键盘输入三位的正整数。 【输出形式】 输出交换后的正整数值。
好的,以下是 Python 的代码实现:
```python
num = input()
if len(num) != 3 or not num.isdigit():
print("-1")
else:
reversed_num = num[::-1]
print(reversed_num)
```
首先从键盘输入一个字符串类型的数值,然后判断该字符串是否是三位正整数,如果不是则输出 -1。判断方法是通过 `len()` 函数获取字符串长度,如果不等于 3,则说明不是三位数;同时使用 `isdigit()` 函数判断该字符串是否由纯数字组成。如果是三位正整数,则将该字符串反向输出,即将 `num` 反转并赋值给 `reversed_num`,然后输出 `reversed_num` 即可。
【问题描述】 编写一java程序,从键盘输入输入一个三位正整数,然后反向输出对应的数,如果输入的数不是三位正整数,则输出-1。 【输入形式】 从键盘输入三位的正整数。 【输出形式】 输出交换后的正整数值。 【输入样例】 356 【输出样例】 653 【样例说明】 从键盘输入的正整数值为356,将该数的个位与百位互换,所得结果为653.如果输入的正整数为300,则输出为3。
以下是Java程序的实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
if (num >= 100 && num <= 999) { // 判断输入的数是否为三位正整数
int digit1 = num / 100; // 取百位数字
int digit2 = num % 10; // 取个位数字
int digit3 = (num / 10) % 10; // 取十位数字
int reversedNum = digit2 * 100 + digit3 * 10 + digit1; // 交换位置得到反向输出的数
System.out.println(reversedNum);
} else {
System.out.println(-1);
}
}
}
```
程序首先通过Scanner读取用户输入的数,然后判断输入的数是否为三位正整数。如果是三位正整数,则分别取出百位、十位和个位数字,并交换百位和个位数字的位置,得到反向输出的数。如果不是三位正整数,则输出-1。
阅读全文