1、 使用了动态内存,程序一定要delete,并且判断申请的空间是单个变量还是数组,避免出现内存泄露的问题
2、异常处理。在除法中,经常需要判断被除数是否为零,如果为0,运行时会出现异常,最好提前进行异常处理,这样便于发现和修改
#include <iostream>
using namespace std;
int main()
{
//初始化
int *p;
int n;
double ave=0;
int number=0;
int num=0;
//输入n
cin>>n;
p=new int [n];
for(int i=0;i<n;i++)
{
cin>>p[i];
if(p[i]<0)
number++;
if(p[i]>0)
{
ave+=p[i];
num++;
}
}
//判断分母,查看是否会出现异常
if (num>0)
ave/=num;
else ave=0;
cout << "ave=" <<ave<<" number="<<number<<endl;
delete []p;
return 0;
}