0

让我首先说是的,这是一项任务,我不是在寻找完整的工作代码。我可能只需要一两个片段和一些想法。所以在这个程序中

  1. 用户被要求提供包含一些文本的原始文件。
  2. 要求用户提供一个输出文件,其中将放置加密文本
  3. 要求用户输入加密密钥 n(在本例中为数字)
  4. 将文件中的 n*n 个字符读入二维数组的 n 行和 n 列。
  5. 转置数组(交换行和列。
  6. 将数组中的字符写入输出文件
  7. 重复步骤 4-6。

基本上我可以做到所有这些,但让我感到困惑的地方是第 7 步……重复部分,这听起来很奇怪,但原因如下。

程序应具有执行以下任务的功能。

  1. 将文件中的字符读入数组。这个函数应该传递输入文件流、数组和键。

    (所以,我猜这个函数会将输入文件中的字符放入二维数组中。我遇到的困惑是这个函数应该是空的还是返回二维数组。我猜我会的必须返回数组,因为我需要转置它,但是规范又说在这个函数中应该传递数组。此外,当您从文件中获取字符时,如何将其分配给二维数组。

  2. 转置数组。这个函数应该传递数组和键。

    (好的,我可以进行转置。这只是行和列的交换。我还要再次返回数组以写入输出文件吗?)这就是转置后文本的样子。

在此处输入图像描述

  1. 将数组中的字符写入文件。这个函数应该传递输出文件流、数组和键。如果输入文件的前 16 个字符如下

“快速的棕色狐狸跳过 T”

并且您的密钥是 4,那么输出文件的前 16 个字符将是“TQKOHU WEIBN CR FJSEOU RXMO PVT”,但现在的问题仍然是我如何对剩余的文本重复此过程。

再次,我只需要这个想法。我不是要求任何人为我编写代码。谢谢你。

4

1 回答 1

0

而且我还建议您要转置整个文件,而不仅仅是第一个 nxn 元素。

您将要从文件中读取 nxn 元素,转置它们,然后读取下一个 nxn 元素,转置它们,然后读取下一个 nxn 元素,转置它们,(等等)

于 2013-10-03T00:33:10.657 回答