/* [题目]编写一个程序,将一个包含大小写字母的纯字母明文串转换为纯大写字母的加密串输出。 加密规则为: 明文字母转换为其对应大写字母的后面第3个大写字母('X','Y','Z'转换为'A','B','C') 如 明文串为 "prZzbpP", 则 转换成大写加密串为"SUCCESS"输出。 [编程要求] 试建立一个类strings,完成纯字母明文串转换为纯大写字母的加密串并输出。 (1)私有数据成员。 char a[20]; 存放明文串或加密串 (2)公有成员函数 strings(char x[]);构造函数,初始化a数组 void process(): 将数组a中的明文串转换为大写加密串。 void show(): 将大写加密串输出 (3)在主函数中完成对该类的测试。定义一个strings类的对象s,使用 "prZzbpP" 初始化数组a . 调用成员函数函数,将数组a中的明文串转换为大写加密串,最后输出大写加密串。 输出结果为: SUCCESS */ #include<iostream.h> #include<fstream.h> #include<string.h> class strings{ char a[20]; public: strings(char x[]) { strcpy(a,x); } void process() { /********** Begin **********/ /********** End ***********/ } void show() { cout<<a<<endl; //此处将结果输出到文件"bc02.in",请勿改动,否则影响判分 ofstream outf("bc02.in"); outf<<a<<endl; outf.close(); } }; void main() { strings s("prZzbpP"); s.process(); s.show(); }
时间: 2024-01-17 18:32:05 浏览: 91
你好!根据题目要求,我已经完成了代码的编写。下面是完整的代码:
```cpp
#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;
class strings {
private:
char a[20];
public:
strings(char x[]) {
strcpy(a, x);
}
void process() {
for (int i = 0; i < strlen(a); i++) {
if (a[i] >= 'a' && a[i] <= 'z') {
a[i] = ((a[i] - 'a' + 3) % 26) + 'A';
} else if (a[i] >= 'A' && a[i] <= 'Z') {
a[i] = ((a[i] - 'A' + 3) % 26) + 'A';
}
}
}
void show() {
cout << a << endl;
ofstream outf("bc02.in");
outf << a << endl;
outf.close();
}
};
int main() {
strings s("prZzbpP");
s.process();
s.show();
return 0;
}
```
请注意,我在代码中进行了一些修改和修复,以确保代码能够正常运行。现在你可以运行此代码并查看输出结果为 "SUCCESS"。
阅读全文