比较字母排列与字典C

时间:2018-07-16 17:38:25

标签: c string dictionary permutation words

我一直在尝试一个程序,该程序仅输出n个字母的所有可能排列的现有单词,例如:

输入“ eta”

输出“茶,吃,吃”

您会注意到,我不希望其他所有非单词的排列方式,例如“ aet,tae”

为此,我有一个dictionary.txt

我已经有了一个打印所有可能排列的函数。

另一方面,我有一段代码,将字符串与字典的每一行进行比较,如果有匹配项,则将其打印出来。

我只是无法使两者一起工作

<form action="" method="post" name="form_name">
<table id="table_id_1" class="table_layout_1">
  <tr>
    <td>
      <img class="table_layout_1_remove_col" src="minus_sign_red_circle.svg" alt="Remove column">
      <img class="table_layout_1_add_col" src="plus_sign_green_circle.svg" alt="Add column">
    </td>
    <td>
      <img class="table_layout_1_remove_col" src="minus_sign_red_circle.svg" alt="Remove column">
      <img class="table_layout_1_add_col" src="plus_sign_green_circle.svg" alt="Add column">
    </td>
  </tr>
  <tr>
    <th>Description</th>
    <th>Value</th>
  </tr>
  <tr>
    <td><input type="text" name="cell_0_0" value="Row 1"></td>
    <td><input type="text" name="cell_0_1" value="1000"></td>
  </tr>
  <tr>
    <td><input type="text" name="cell_1_0" value="Row 2"></td>
    <td><input type="text" name="cell_1_1" value="2000"></td>
  </tr>
  <tr>
    <td><input type="text" name="cell_2_0" value="Row 3"></td>
    <td><input type="text" name="cell_2_1" value="3000"></td>
  </tr>
  <tr>
    <td><input type="text" name="cell_3_0" value="Row 4"></td>
    <td><input type="text" name="cell_3_1" value="4000"></td>
  </tr>
</table>
</form>

1 个答案:

答案 0 :(得分:0)

您的permute()例程通过直接调用puts()输出字符串。相反,只有匹配时才要输出。

假设您要将字典检查代码从main()重构到新例程printIfMatch(char *str_check)中,其中str_check取代了代码中当前使用的str_miomain()

然后您就可以从permute()调用该例程了