随机输入一个串长不大于9且由数字字符组成的字符串,然后将其变成一个颠倒的整数并输出
时间: 2024-05-01 16:16:51 浏览: 155
以下是Python的实现代码:
```python
s = input() # 输入一个数字串
reverse_s = s[::-1] # 将其颠倒
reverse_int = int(reverse_s) # 转换成整数
print(reverse_int)
```
以上代码中,首先通过`input()`函数获取用户输入的数字串。然后使用字符串切片`[::-1]`将其颠倒,即从最后一个字符开始,每隔一个字符取一个字符,直到第一个字符为止。最后使用`int()`函数将颠倒后的字符串转换成整数,并通过`print()`函数输出结果。
相关问题
C语言 随机输入一个字长不大于9由字符组成的字符串,然后将其变成一个颠倒的整数并输出
首先,我可以回答这个问题。以下是解题方法:
1. 使用字符数组(char array)存储输入的字符串,并记录其长度length;
2. 利用循环将这个字符串从后往前遍历,生成一个整数reverse_num;
3. 在每次循环过程中,将字符型数字减去'0'的ASCII值,转换成整型数字后乘以相应位数的10的幂;
4. 将得到的数字加到reverse_num上;
5. 循环结束后,reverse_num就是颠倒的整数,输出即可。
下面是示例代码:
```
#include <stdio.h>
#include <string.h>
int main() {
char str[10]; // 字符数组
int length, i, reverse_num = 0;
printf("请输入一个不超过9位的字符串:");
scanf("%s", str);
length = strlen(str);
// 生成颠倒的整数
for (i = length - 1; i >= 0; i--) {
reverse_num += (str[i] - '0') * pow(10, i);
}
// 输出结果
printf("颠倒后的整数为:%d\n", reverse_num);
return 0;
}
```
注意,上述代码中需要用到math.h头文件中的pow()函数,需要在编译时加上-lm选项。
编写一个函数invert(s),颠倒输入的字符串参数s后返回。在main()函数中测试此函数:从键盘输入一个正整数n(n∈[1,20]),然后再输入n个字符串(长度不大于100),对于每一个字符串,然后调用invert函数进行颠倒字符串操作,将颠倒后的字符串打印在屏幕上。
以下是Python代码实现:
def invert(s):
return s[::-1]
n = int(input("请输入正整数n(n∈[1,20]):"))
if n < 1 or n > 20:
print("输入有误!")
else:
for i in range(n):
s = input("请输入字符串:")
if len(s) > 100:
print("输入有误!")
else:
print(invert(s))
阅读全文