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; }