填空题1 #include <cstdlib>
*2 #include <iostream>
3 using namespace std;
4
5 char encoder[26] = {'C','S','P',0};
6 char decoder[26];
7
8 string st;
9
10 int main() {
11 int k = 0;
12 for (int i = 0; i < 26; ++i)
13 if (encoder[i] != 0) ++k;
14 for (char x ='A'; x <= 'Z'; ++x) {
15 bool flag = true;
16 for (int i = 0; i < 26; ++i)
17 if (encoder[i] ==x) {
18 flag = false;
19 break;
20 }
21 if (flag) {
22 encoder[k]= x;
23 ++k;
24 }
25 }
26 for (int i = 0; i < 26; ++i)
27 decoder[encoder[i]- 'A'] = i + 'A';
28 cin >> st;
29 for (int i = 0; i < st.length(); ++i)
30 st[i] = decoder[st[i] -'A'];
31 cout << st;
32 return 0;
33 }
•判断题1) 输入的字符串应当只由大写字母组成,否则在访问数组时可能越界。( )2) 若输入的字符串不是空串,则输入的字符串与输出的字符串一定不一样。() 3) 将第 12 行的“i<26”改为“i<16”,程序运行结果不会改变。( )
4) 将第 26 行的"i<26”改为“i<16”,程序运行结果不会改变。( )
•单选题
5)若输出的字符串为“ABCABCABCA”,则下列说法正确的是( )。
6)若输出的字符串为“CSPCSPCSPCSP”,则下列说法正确的是( )。
1.A. 正确B. 错误2.A. 正确B. 错误3.A. 正确B. 错误4.A. 正确B. 错误5. A. 输入的字符串中既有𝑆又有P
B. 输入的字符串中既有𝑆又有B
C. 输入的字符串中既有A又有P
D. 输入的字符串中既有A又有B
6.
A. 输入的字符串中既有P又有K
B. 输入的字符串中既有J又有𝑅
C. 输入的字符串中既有J又有𝐾
D. 输入的字符串中既有P又有R
问题一
问题二
问题三
问题四
问题五
问题六