判断题

阅读程序(1)

1-6题   组合题

#include 

#include 

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 = 0; i < st.length( ); ++i)

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

  cout << st;

  return 0;

}

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

A

正确

B

错误

赣ICP备20007335号-2