© 版权声明:本文为博主原创文章,转载请注明出处

代码:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #define GET_ARRAY_LEN(array, len){len = sizeof(array) / sizeof(array[0]);}// 定义一个带参数的宏,将数组长度存储在变量len中
 4 
 5 int main()
 6 {
 7     int seq[] = {2, 11, -4, 13, -5, 2, -5, -3, 12, -9};// 数组
 8     int i, j, len, max;
 9 
10     GET_ARRAY_LEN(seq, len);// 计算数组长度
11     max = seq[0];// 初始化最大值
12 
13     for (i = 0; i < len; i++) {
14         int temp = seq[0];
15         for (j = i + 1; j < len; j++) {
16             temp += seq[j];
17             if (temp > max) {
18                 max = temp;
19             }
20         }
21     }
22 
23     printf("The maximum of the subsequence is %d\n", max);
24 
25     return 0;
26 }

结果:

C----------输入一组整数,求出这组数字子序列和中的最大值,只要求出最大子序列的和,不必求出最大值对应的序列。

 

相关文章:

  • 2021-09-11
  • 2021-07-26
  • 2022-12-23
  • 2021-12-26
  • 2021-06-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-08-08
  • 2021-11-17
  • 2021-10-23
  • 2022-03-05
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案