算法训练 动态数组使用
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
从键盘读入n个整数,使用动态数组存储所读入的整数,并计算它们的和与平均值分别输出。要求尽可能使用函数实现程序代码。平均值为小数的只保留其整数部分。
样例输入:
5
3 4 0 0 2
样例输出:
9 1
样例输入:
7
3 2 7 5 2 9 1
样例输出:
29 4
C语言代码:
#include<stdio.h>
#include<malloc.h>
int sum(int a[],int n)
{
int s=0,i;
for(i=0;i<n;i++)
s=s+a[i];
return s;
}
int main()
{
int n;
int i,*a=NULL;
scanf("%d",&n);
a=(int *)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("%d %d\n",sum(a,n),(int)(sum(a,n)*1.0)/n);
return 0;
}