从键盘读入n个整数,使用动态数组存储所读入的整数,并计算它们的和与平均值分别输出。要求尽可能使用函数实现程序代码。平均值为小数的只保留其整数部分。
样例输入
5
3 4 0 0 2
3 4 0 0 2
样例输出
9 1
样例输入
7
3 2 7 5 2 9 1
3 2 7 5 2 9 1
样例输出
29 4
创建并且使用动态数组,是节省内存的一种非常有效的做法,用多少,给多少,不仅要会动态创建一维数组,还要运用指向指针的指针动态创建二维数组。
#include<iostream>
using namespace std;
int main()
{
int n,i,sum,ave;
cin>>n;
int *s=new int[n];
sum=0;
for(i=0;i<n;i++)
{
cin>>s[i];
sum=sum+s[i];
}
ave=sum/(n+1);
cout<<sum<<' '<<ave<<endl;
return 0;
}
动态创建二维数组
#include<iostream>
using namespace std;
int main()
{
int r,c,i,j;
cin>>r>>c;
int **s=new int *[r];
for(i=0;i<r;i++)
s[i]=new int[c];
for(i=0;i<r;i++)
for(j=0;j<c;j++)
cin>>s[i][j];
for(i=0;i<r;i++)
{
for(j=0;j<c;j++)
{
cout<<s[i][j];
if(j!=c-1)
cout<<' ';
}
cout<<endl;
}
return 0;
}