杭电2023 题 我的程序为什么出现runtime erroor错误 求解决!只希望改下我的代码 不要其他解法

#include<iostream>#include<vector>#include<iomanip>usingnamespacestd;intmain(){intn,m... #include<iostream>
#include<vector>
#include<iomanip>
using namespace std;
int main()
{
int n,m;
int i,j;
double mean;
double sum=0;
int flags=0;
while(cin>>n>>m)
{
if(n==0||m==0)
break;
vector<vector<int> > array(n,vector<int>(m));
vector<float> vecfloat(m);
for(i=0;i<n;i++)
for(j=0;j<m;j++)
cin>>array[i][j];
for(i=0;i<n;i++)
{
sum=0;
for(j=0;j<m;j++)
{
sum+=array[i][j];
}
cout<<setiosflags(ios::fixed)<<setprecision(2)<<sum/m<<" ";
}
cout<<endl;
for(j=0;j<m;j++)
{
sum=0;
for(i=0;i<n;i++)
{
sum+=array[j][i];
}
mean=sum/n;
vecfloat[j]=mean;
cout<<setiosflags(ios::fixed)<<setprecision(2)<<mean<<" ";
}
cout<<endl;
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
if(array[i][j]<vecfloat[j])
{
flags++;
break;
}

}
cout<<(n-flags)<<endl;
flags=0;
cout<<endl;
}
return 0;
}
展开
 我来答
deityde1127
2012-12-14 · 超过17用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:24.7万
展开全部
我一点题目没看。。这是语言板块。。不回答 算法题目。
第一。百度知道,要有提问的客气。 不要在这里提问。
第二。你贴那些 代码。一点 注释 不写。没有人看的。
在任何一个地方。QQ群。论坛。都不会有人理你。。
写代码,写注释。
第三。runtime error。多半是 数组越界 或者 栈溢出。不是TLE。一般不是 优化 时间复杂度 解决的问题。重新考察程序中的所有大变量。查看 服务端 数据的上界,程序能否容纳。等。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
光派通信
2024-09-03 广告
对光传输设备进行调试和维护,需要掌握以下关键点:1. **熟悉设备性能**:深入了解OTN/DWDM等光传输产品的性能特点,确保能够熟练使用设备。2. **按规范操作**:依据产品说明书和维护手册进行调试和维护,确保操作步骤正确无误。3. ... 点击进入详情页
本回答由光派通信提供
zhou2214
2012-12-14 · TA获得超过706个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:506万
展开全部
#include<iostream>
#include<vector>
#include<iomanip>
using namespace std;
int main()
{
int n,m;
int i,j;
double mean;
double sum=0;
int flags=0;
while(cin)
{
std::cout<<"请输入矩阵的行数(n)与列数(m):\n";
std::cin>>n>>m;
if(n==0||m==0)
break;
vector<vector<int> > array(n,vector<int>(m));
vector<float> vecfloat(m);
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
std::cout<<"请输入数据:["<<i<<"]["<<j<<"]\n";
cin>>array[i][j];
}
for(i=0;i<n;i++)
{
sum=0;
for(j=0;j<m;j++)
{
sum+=array[i][j];
}
cout<<setiosflags(ios::fixed)<<setprecision(2)
<<"第"<<i+1<<"列的平均值为:"<<sum/m<<"\t";
if((i+1)%4==0)
std::cout<<std::endl;
}
cout<<endl;
for(j=0;j<m;j++)
{
sum=0;
for(i=0;i<n;i++)
{
sum+=array[i][j]; ////
}
mean=sum/n;
vecfloat[j]=mean;
cout<<setiosflags(ios::fixed)<<setprecision(2)
<<"第"<<j+1<<"行的平均值为:"<<mean<<"\t";
if((j+1)%4==0)
std::cout<<std::endl;
}
cout<<endl;
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
if(array[i][j]<vecfloat[j])
{
flags++;
break;
}

}
cout<<"比行平均值大的数共有:"<<(n-flags)<<endl;
flags=0;
cout<<endl;
}
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式