输入一个不小于 100100 且小于 10001000,同时包括小数点后一位的一个浮点数,例如 123.4123.4 ,要求把这个数字翻转过来,变成 4.3214.321 并输出。用C语言
时间: 2023-05-30 15:05:23 浏览: 865
#include<stdio.h>
#include<string.h>
int main(){
char str[20];
scanf("%s", str);
int len = strlen(str);
int dotPos = 0;
for(int i=0; i<len; i++){
if(str[i] == '.'){
dotPos = i;
break;
}
}
for(int i=len-1; i>=0; i--){
if(i == dotPos-1) continue;
printf("%c", str[i]);
if(i == dotPos+1) printf(".");
}
printf("\n");
return 0;
}
相关问题
输入一个不小于 100100 且小于 10001000,同时包括小数点后一位的一个浮点数,例如 123.4123.4 ,要求把这个数字翻转过来,变成 4.3214.321 并输出。
代码如下:
```python
num = input("请输入一个不小于100且小数点后一位的浮点数:")
reverse_num = num[::-1]
print(reverse_num)
```
运行结果示例:
```
请输入一个不小于100且小数点后一位的浮点数:123.4
4.321
```
注意:此题要求输入的数字不小于100,因此无需对输入进行判断。如果输入数字小于100,可能会导致程序出错。
C++C++输入一个不小于 100100 且小于 10001000,同时包括小数点后一位的一个浮点数,例如 123.4123.4 ,要求把这个数字翻转过来,变成 4.3214.321 并输出。
好的,可以使用字符串来实现翻转操作。首先,我们需要读入这个浮点数,可以使用 C++ 中的 `cin` 函数来实现:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
// TODO
return 0;
}
```
读入后,我们需要把小数点前后的部分分离开,可以使用 `find` 函数来查找小数点的位置:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
int pos = s.find('.');
string integer_part = s.substr(0, pos);
string decimal_part = s.substr(pos + 1);
// TODO
return 0;
}
```
这样,我们就得到了小数点前后的部分。接下来,我们可以翻转这两部分,然后再加上小数点,最后输出结果:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
int pos = s.find('.');
string integer_part = s.substr(0, pos);
string decimal_part = s.substr(pos + 1);
// 翻转整数部分和小数部分
reverse(integer_part.begin(), integer_part.end());
reverse(decimal_part.begin(), decimal_part.end());
// 在翻转后的小数部分中加入小数点
decimal_part.insert(1, ".");
// 输出结果
cout << decimal_part << integer_part << endl;
return 0;
}
```
注意:这里使用了 `reverse` 函数来翻转字符串,需要包含头文件 `<algorithm>`。
阅读全文