计算子数组的总和

时间:2021-06-13 19:29:37

标签: arrays c

我不会说英语,所以请不要判断:)

我需要你帮忙做个练习。

程序从用户那里获取一个数组大小和一个数字。

数字是目标 - 有一个循环搜索该数字。

它应该在数组中至少出现两次,并且程序应该计算从左到右最远的两个数字之间的整数之和。

例如: 用户想要数组中的 10 个整数:

4, 6, 0, 12, 55, 2, 0, 12, 7, 12

程序对从最左边的 12 到最右边的 12 的所有数字求和。

运算:12+55+2+0+12+7+12 = 100

我什至不知道从哪里开始,非常感谢您的帮助。 谢谢!

1 个答案:

答案 0 :(得分:0)

您需要按如下方式应用逻辑(不会帮助您编写代码)

  1. 通过数组迭代(一一遍历所有元素),直到到达给定数字的第一个位置。将其标记为开始(例如,如上所示,3 将从 0 开始计数)

  2. 从一开始就在数组中向前移动,直到找到另一个匹配项。保持该位置作为终点。 (以上数组为 7)

  3. 再次从数组中的端点继续,直到遇到另一个数字或到达数组的末尾。如果到达终点,则跳转到第 6 步。(上述数组为 9)

  4. 如果是其他数字,将此标记为终点(将 7 更改为 9)

  5. 重复第 3 步

  6. 现在计算从开始到结束(从 3 到 9)所有 nos 的总和

完成!