两个字符数组之间的比较

时间:2015-03-08 12:45:41

标签: c++ arrays character

我有两个长度为30的字符数组,将真/假问卷的测试密钥与个别候选人的答案进行比较。

我的问题是,当我尝试使用if函数比较两个字符数组时,它似乎没有记录比较。我尝试使用cout信号来检查比较是否起作用但仍没有进展。

我发布了用于比较的for循环!

for (int l=0; l>30; l++)
    {
        if (test_ans[l] == test_key [l])
        {
            s_correct++;
            cout << "c";
        }
        if (test_ans[l] == ' ')
        {
            s_blank++;
            cout << "b";
        }
        if ((test_ans[l] != test_key [l])&&(test_ans[l] != ' '))
        {
            s_bad++;
            cout << "w";
        }
    }

2 个答案:

答案 0 :(得分:1)

for (int l=0; l>30; l++)
              ^^^^
你现在看到了吗? ;)

答案 1 :(得分:0)

更改

for (int l=0; l>30; l++)
//            ^^^^ <- Therein lies the secret of your problem.              

for (int l=0; l < 30; l++)

因为当l < 30刚刚初始化为false时,语句l显然是0,因此你的循环不会执行甚至一次


这可能是一个错字,但在StackOverflow,我们建议您自己调试代码以查找广泛的错误,然后询问是否仍未修复错误。