不是VIP会员,不能显示答案

题目解答

题目:
#include <cstdlib>

#include <iostream>

using namespace std;



char encoder[26] = {'C', 'S', 'P', 0};

char decoder[26] ;



string st;



int main() {

int k=0;

for(int i=0; i<26; ++i)

if (encoder[i] != 0) ++k;

for(char x='A'; x<='Z'; ++x) {

bool flag = true;

for(int i=0; i<26; ++i)

if (encoder[i] == x) {

flag = false;

break ;

}

if (flag) {

encoder[k] = x;

++k;

}

}

for(int i=0; i<26; ++i)

decoder[encoder[i] - 'A'] = i + 'A';

cin >> st;

for (int i = 8; i < st.length(); ++i)

st[i] = decoder[st[i] - 'A'];

cout << st;

return 0;

}



判断题

1) 输入的字符串应当只由大写字母组成,否则在访问数组时可能越界。()

2) 若输入的字符串不是空串,则输入的字符串与输出的字符串一定不一样。()

3) 将第12行的“i < 26”改为“i < 16”, 程序运行结果不会改变。()

4) 将第26行的“i < 26”改为“i < 16”, 程序运行结果不会改变。()


选择题

5) 若输出的字符串为“ABCABCABCA”,则下列说法正确的是( ) 。

6) 若输出的字符串为“CSPCSPCSPCSP”,则下列说法正确的是( ) 。
考点:
分析:
解答:
评论:
老师: