⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 max_batch.c

📁 针对一个数组
💻 C
字号:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int a[]= {1,3,5,9,-4,6,-7,-23,4,20,89,-71,5};

int main (void)
{
	int i;
	int max = 0; //存放计算过程的中的局部最大值
	int beg = 0; //局部最大值的起始位置
	int end = 0; //局部最大值的最终位置
	int reserve_val = 0;//全局最大值
	int r_beg = 0;//全局最大值的起始位置
	int r_end = 0;//全局最大值的最终位置
	for (i = 0; i < sizeof (a) / sizeof (int); i++)
	{
		if ((max + a[i]) > a[i])//判断,然后更新局部最大值、起始位置、最终位置
		{
			end = i;
			max = max + a[i];
		}
		else
		{
			beg = i;
			end = i;
			max = a[i];
		}
		if (max > reserve_val)//局部最大值和全局最大值进行比较
		{
			reserve_val = max;
			r_beg = beg;
			r_end = end;
		}
	}
	printf ("max= %d, during [%d, %d]\n", max, beg, end);
	printf ("r_v= %d, during [%d, %d]\n", reserve_val, r_beg, r_end);

	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -