#include <iostream>#include <string>using namespace std;int a[100];string s;int gen[13] = {1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1};int main() { cin >> s; for (int i = 0; i < 32; ++i) { a[i] = s[i] - '0'; } for (int i = 32; i < 44; ++i) { a[i] = 0; } for (int i = 0; i < 32; ++i) { if (a[i] == 0) continue; for (int j = 0; j < 13; ++j) { a[i + j] ^= gen[j]; } } for (int i = 32; i < 44; ++i) { cout << a[i]; } cout << endl; return 0;}说明:输入保证为一个长度恰为 32 的 '0' / '1' 字符串。
(1 分)当输入为 32 个 '0' 时,程序输出 12 个 0。( )
程序运行结束后,数组 a 中下标从 0 到 31 的元素一定全部为 0。( )
若将第 12—14 行(为 a[32] 到 a[43] 补 0 的循环)删除,会改变程序输出的结果。( )
关于第 6 行定义的数组 gen,下列说法正确的是( )。
该程序实现的功能,最准确的说法是( )。
若把第 16 行 if (a[i] == 0) continue; 删除,说法正确的是( )。