#include <iostream>
using namespace std;
int main()
{
int n;
double sum=0;
cin>>n;
int a[n];
for( int i=0;0<n;i++){
cin>>a[i];
sum =sum+a[i];
}
cout<<sum/n;
return 0;
}
错误一: 变量不可以作为定义数组指定的个数
错误二:不是0 < n ; 是 i < n
#include <iostream>
using namespace std;
int main() {
int n;
double sum = 0;
//cin >> n;
// int a[n]; // 变量不可以作为定义数组指定的个数
int a[5]; // 必须是常量;如果不知个数,可以使用容器vector动态数组进行存储
n = sizeof(a) / sizeof(a[0]);
for (int i = 0; i < n; i++) { // i < n
cin >> a[i];
sum = sum + a[i];
}
cout << sum / n;
return 0;
}
for循环的结束条件有问题,应该是i < n ; 而不是 0 < n
很好奇程序怎么可以执行的。
#include <iostream>
using namespace std;
int main()
{
int n;
double sum = 0;
cin >> n;
int *a=new int[n];
for (int i = 0; i<n; i++) {
cin >> a[i];
sum = sum + a[i];
}
cout << sum / n;
delete[] a;
return 0;
}