如何修复此比较字符串(来自argv和scanf)程序?

时间:2019-02-09 20:19:56

标签: c arrays scanf strstr

试图修复该程序,该程序比较通过argv找到的单词和来自scanf()的单词。如果找到相同的单词,则打印“ CENSORED”,否则,仅打印该单词。例如,我有一个名为Beatles.txt的文件,其中包含以下单词: 保罗 林戈 乔治 约翰

如果我编译该程序并进行如下测试: ./a.out ringo

已检查 林戈 经审查 林戈 经审查 铃声

我想将其作为输出:

保罗 经审查 乔治 约翰

这是我的代码:

int main(int argc, char* argv[]) {

char word_arr[10000][20];
int i=0;

while ( scanf("%s",word_arr[i])!=EOF) {

    for (int i=1; i<argc; i++) {

        if (strstr(word_arr[i],argv[i]) != NULL) {

            printf("CENSORED\n");
        }

        else {

            printf("%s\n",word_arr[i]);

        }

    }
i++;

}

return 0;

}

1 个答案:

答案 0 :(得分:1)

@WeatherVane观察到,

  

内部<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <h2> Unit Color </h2> <input type="radio" value="white" name="unit" />White <input type="radio" value="black" name="unit" />Black <br/> <h2> Left Handle </h2> <input type="radio" value="ln" name="left" />Normal <input type="radio" value="lsp" name="left" />Super Plush <h2> Right Handle </h2> <input type="radio" value="rn" name="right" />Normal <input type="radio" value="rsp" name="right" />Super Plush <div class="message"> <h2>Please select an option!</h2> </div> <div class="w-ln-rn">White / Left Normal / Right Normal</div> <div class="w-lsp-rsp">White / Left Super Plush / Right Super Plush</div> <div class="b-ln-rn">Black / Left Normal / Right Normal</div> <div class="b-lsp-rsp">Black / Left Super Plush / Right Super Plush</div> <br><br> <div id="reset-btn"> <button id="reset">Reset</button> </div>遮盖了外部i。为这些标识符之一选择另一个名称。

这里是执行此操作的一种方法:

i