题目:
给出一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。
请返回 nums 的动态和。
输入:nums = [1,2,3,4]
输出:[1,3,6,10]
解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。
代码:
void runningSum(int nums[],int i){
//只需要处理核心逻辑问题,不去关心非逻辑问题,比如输出之类的。
for(int j=1;j<i;j++){
nums[j]+=nums[j-1];
}
}
//输出写到另一个函数里
测试:
#include<stdio.h>
#include <stdlib.h>
#include<math.h> //数学函数,求平方根、三角函数、对数函数、指数函数...
#define MAXSIZE 15
//用于使用c++的输出语句
#include<iostream>
using namespace std;
void runningSum(int nums[],int n);
void printArr(int arr[],int i);
void main(){
int arr[]={1,2,3,4};
int i=4;
runningSum(arr,i);
printArr(arr,i);
}
//一个函数的返回值并不一定需要使用到
void runningSum(int nums[],int i){
//只需要处理核心逻辑问题,不去关心非逻辑问题,比如输出之类的。
for(int j=1;j<i;j++){
nums[j]+=nums[j-1];
}
}
void printArr(int arr[],int i){//此时arr[]已经变成了动态和数组,只需输出即可
for(int j=0;j<i;j++){
cout<<arr[j]<<"\t";
}
}