C++C++输入一个不小于 100100 且小于 10001000,同时包括小数点后一位的一个浮点数,例如 123.4123.4 ,要求把这个数字翻转过来,变成 4.3214.321 并输出。
时间: 2024-03-26 16:38:14 浏览: 218
好的,可以使用字符串来实现翻转操作。首先,我们需要读入这个浮点数,可以使用 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>`。
阅读全文