问题标题: 酷町堂:3961错了

0
0
已解决
朱家烨
朱家烨
资深守护
资深守护
#include <iostream>
#include<cstdio>
#include <string>
using namespace std;
double a[11000];
int pjs(int o)
{
   int sum,cnt;
    for(int i=1;i<=o;i++)
    {
        sum+=a[i];
        cnt++;
    }
    printf("%.1f",sum*1.0/cnt);
    cout<<endl;
    
}
int main(){
    int n,m;
cin>>n;
for(int i=1;i<=n;i++)
{
   cin>>m;
    for(int j=1;j<=m;j++)
    {
    cin>>a[j];
    }  
    
}
	pjs(m);
    return 0;
}

 

朱家烨在2020-07-17 15:02:57追加了内容


0
已采纳
荣光峰
荣光峰
资深光能
资深光能
double pj(double x){
    double sum=0;
    for(int i=1;i<=x;i++){
        sum+=a[i];
    }
    return sum/x;
}

核心代码

0
李显晨
李显晨
中级启示者
中级启示者
#include<iostream>
#include<cstdio> 
using namespace std;
int a[1010],sum;
void pjs(int n){
    int m;
    for(int i=1;i<=n;i++){
        cin>>m;
        for(int j=1;j<=m;j++){
            cin>>a[i];
            sum+=a[i];
        }
        printf("%.1f",sum*1.0/m);
        sum=0;
        cout<<endl;
    } 
} 
int main(){
    int n;
    cin>>n;
    pjs(n);
    return 0;
} 

100分代码,望采纳

0
黄子扬
黄子扬
初级天翼
初级天翼

正解:你的cnt和sum没有赋值。。。

0
0
周明轩
周明轩
资深光能
资深光能

你错的地方是sum和cnt没赋初值。

应把

int sum,cnt;

改成

int sum=0,cnt=0;

另:cnt你算一下,其实是等于o的。所以可以把cnt删掉,把

printf("%.1f",sum*1.0/cnt);

改为

printf("%.1f",sum*1.0/o);

应该也是对的。

望采纳,谢谢

​​​​​​​​​​​​​​

0
王俊杰
王俊杰
高级光能
高级光能
  • printf("%.1f",sum1*1.0/m);
  • cout<<endl;
  • sum1=0;
  • }采纳我
我要回答