- int main()
- {
- int i;
- int a[1000];
- int max = 0;
- int b = 0;
- srand(time(NULL));
- cout<<"数组为:"<<endl;
- for (i = 0; i<1000; i++)
- {
- a[i] = rand()%2001-1000;
- }
- for (i = 0; i<1000; i++)
- {
- cout <<a[i] << '\t';
- }
- cout << endl;
- for (i = 0; i < 1000; i++)
- {
- b += a[i];
- if (b < 0)
- b = 0;
- if (b> max)
- max = b;
- }
- if (max == 0)
- {
- max = a[0];
- for (i = 0; i < 1000; i++)
- {
- if (max < a[i])
- {
- max = a[i];
- }
- }
- }
- cout <<"最大子数组和为:"<< max << endl;
- system("pause");
- return 0;
- }
来源: http://www.bubuko.com/infodetail-2807484.html