用C++实现 从键盘读人一行宇符,把其中的宇母宇符依次存放在磁盘文件f2.dat 中。 再把它从磁盘文件读人程序,将其中的小写字母改为大写字母,再存人磁盘文件 f3.dat
时间: 2024-02-11 21:08:07 浏览: 77
好的,以下是用 C++ 实现该功能的代码:
```cpp
#include <iostream>
#include <fstream>
#include <cctype>
using namespace std;
int main() {
// 从键盘读入一行字符
string input_str;
cout << "请输入一行字符:";
getline(cin, input_str);
// 将宇母宇符存入 f2.dat 文件
ofstream f2("f2.dat");
for (char c : input_str) {
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') {
f2 << c;
}
}
f2.close();
// 从 f2.dat 文件中读取字符,将小写字母改为大写字母后存入 f3.dat 文件
ifstream f2("f2.dat");
ofstream f3("f3.dat");
char c;
while (f2 >> c) {
if (islower(c)) {
c = toupper(c);
}
f3 << c;
}
f2.close();
f3.close();
return 0;
}
```
上述代码中,我们首先通过 `getline()` 函数从键盘读入一行字符,并将其中的宇母宇符存入 `f2.dat` 文件。在写入文件时,我们遍历字符串中的每个字符,判断是否为宇母宇符,如果是则写入文件。
接着,我们通过 `ifstream` 和 `ofstream` 类分别打开 `f2.dat` 和 `f3.dat` 文件,分别用于读取和写入。在读取 `f2.dat` 文件时,我们使用 `>>` 运算符从文件中读取一个字符,并判断是否为小写字母,如果是则将其转换为大写字母,并写入 `f3.dat` 文件中。
最后,我们通过 `close()` 函数来关闭文件,避免资源泄漏和文件损坏的问题。
阅读全文