c++问题error C2109: 下标要求数组或指针类型

#include<iostream>#include<string>usingnamespacestd;intmain(void){inta[4][4],b[4]={0,... #include<iostream>
#include<string>
using namespace std;
int main(void)
{
int a[4][4],b[4]={0,0,0,0},c[4]={0,1,2,3};
int d[4]={0,0,0,0,},e[4]={0,0,0,0,},f[4]={0,0,0,0};
int i,j,t,m,n,max1,max2;
string s[4]={"甲","乙","丙","丁",};
cout<<"请分别输入甲:乙,甲:丙,甲:丁,乙:丙,乙:丁,丙:丁"<<endl;
for(i=0;i<4;i++)
{for(j=i+1;j<4;j++)
{cout<<"输入"<<s[i]<<":"<<s[j]<<endl;
cin>>a[i][j]>>a[j][i];
if(a[i][j]>a[j][i])
b[i]=3+b[i];
else if(a[i][j]<a[j][i])
b[j]=b[j]+3;
else
{b[i]++;
b[j]++;}}}
for(i=0;i<=3;i++)
{for(j=0;j<=3;j++)
{if(j!=i)
{d[i]+=b[i][j]-b[j][i];
e[i]+=b[i][j];
}}}
max1=d[0];
for(i=1;i<=3;i++)
{if(d[i]>max1)
{max1=d[i];
m=i;}}
max2=f[0];
for(i=1;i<=3;i++)
{if(f[i]>max2)
{max2=f[i];
n=i;}}
for(i=0;i<4;i++)
{for(j=i+1;j<4;j++)
{
if(d[j]<d[0])
t=c[j];
c[j]=c[0];
c[0]=t;
}}
for(i=0;i<4;i++)
cout<<s[c[i]]<<b[c[i]]<<" "<<endl;
return 0;
}
一直显示error C2109: 下标要求数组或指针类型
展开
 我来答
帅得有点坏
2011-01-04 · TA获得超过1149个赞
知道小有建树答主
回答量:463
采纳率:0%
帮助的人:477万
展开全部
#include<iostream>
#include<string>
using namespace std;
int main(void)
{
int a[4][4],b[4]={0,0,0,0},c[4]={0,1,2,3};
int d[4]={0,0,0,0,},e[4]={0,0,0,0,},f[4]={0,0,0,0};
int i,j,t,m,n,max1,max2;
string s[4]={"甲","乙","丙","丁",};
cout<<"请分别输入甲:乙,甲:丙,甲:丁,乙:丙,乙:丁,丙:丁"<<endl;
for(i=0;i<4;i++)
{
for(j=i+1;j<4;j++)
{
cout<<"输入"<<s[i]<<":"<<s[j]<<endl;
cin>>a[i][j]>>a[j][i];
if(a[i][j]>a[j][i])
b[i]=3+b[i];
else if(a[i][j]<a[j][i])
b[j]=b[j]+3;
else
{
b[i]++;
b[j]++;}
}
}
for(i=0;i<=3;i++)
{
for(j=0;j<=3;j++)
{
if(j!=i)
{
d[i]+=a[i][j]-a[j][i];
e[i]+=a[i][j];
}
}
}
max1=d[0];
for(i=1;i<=3;i++)
{
if(d[i]>max1)
{
max1=d[i];
m=i;
}
}
max2=f[0];
for(i=1;i<=3;i++)
{
if(f[i]>max2)
{
max2=f[i];
n=i;
}
}
for(i=0;i<4;i++)
{
for(j=i+1;j<4;j++)
{
if(d[j]<d[0])
t=c[j];
c[j]=c[0];
c[0]=t;
}
}
for(i=0;i<4;i++)
cout<<s[c[i]]<<b[c[i]]<<" "<<endl;
return 0;
}
下面的按个a写成b了
for(i=0;i<=3;i++)
{
for(j=0;j<=3;j++)
{
if(j!=i)
{
d[i]+=a[i][j]-a[j][i];
e[i]+=a[i][j];
}
}
}

参考资料: ogin_u

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友50683627f
2011-01-04 · TA获得超过432个赞
知道小有建树答主
回答量:402
采纳率:0%
帮助的人:365万
展开全部
b[4]={0,0,0,0} ---》b[i][j]
你自己定义的时候是一维,使用的时候却是二维的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式