我收到一个输入文件,其中有一堆行。 我希望能够计算行数并分析它们。
输入将是多行仅包含整数的代码。 例如:
3 2
1 2
2 3
4 3
1 2
2 3
3 4
这是棘手的部分: 第一行有两个数字:3 和 2。(3 目前不相关)。 2确实很重要。它代表我必须读取和保存的行数。 所以,根据这个例子,我必须保存这些行
1 2
2 3
那么为什么还有其他线路呢? - 你问。好吧,让我们将此输入视为 block 。
在 3 2
行之后,我读了两行。所以就好像那个区 block 结束了。
但随后,4 3
行出现了。这意味着我必须做与第一个 block 完全相同的事情。因此,从 4 3
行开始,我现在知道我必须读取并保存接下来的 3 行。意思是线条
1 2
2 3
3 4
我已经为此翻山越岭,但似乎找不到任何可能的解决方案
最佳答案
当您遇到这样的问题时,首先考虑结构会很有用。这是主要算法的一种简单伪代码方法,可以帮助您入门。除非您提供代码及其问题,否则人们无法真正提供帮助。
declare line buffer array
while (read a line into buffer == succeeds) {
scan buffer for two numbers (m, n)
loop how many times? {
read a line into buffer
scan buffer for next two numbers (x, y)
}
}
将其翻译成 C 语言应该不会太困难。然后您可以扩展它来存储您扫描过的数字、计算行数或其他任何内容。
一旦您获得了一些代码,如果它不起作用并且您无法找出问题所在,您将获得大量帮助。
关于计算文件中的行数 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15370607/