| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 647 人关注过本帖
标题:[求助]这个错误是怎么回事啊?
只看楼主 加入收藏
glgrubby
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-9-8
收藏
 问题点数:0 回复次数:9 
[求助]这个错误是怎么回事啊?
error C2087: '<Unknown>' : missing subscript
2007-09-09 16:49
冰的热度
Rank: 2
等 级:禁止访问
威 望:5
帖 子:404
专家分:0
注 册:2006-12-2
收藏
得分:0 
把你的原代码贴出来

科学是永恒之迷...... 我的博客http://blog..cn/u/1267727974 阅读我的blog,懂与不懂都是收获!
2007-09-09 17:05
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
贴出代码看看啊,好象是少下标.

学习需要安静。。海盗要重新来过。。
2007-09-11 10:12
glgrubby
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-9-8
收藏
得分:0 
回复:(sunkaidong)贴出代码看看啊,好象是少下标.
#include<math.h>
#include<stdlib.h>
#include<iostream.h>
void main()
{ double A[][]={0};
double S,temp,M;
int N,i,j,k,r;

cout<<"Please input the N:"<<endl;
cin>>N;

cout<<"输入增广矩阵A"<<endl;//输入
for(i=0;i<N; i++){
for(j=0;j<N+1; j++)
cin>>A[i][j];
}
cout<<endl<<endl;
cout<<"增广矩阵A:"<<endl;//输出
for(i=0;i<N; i++)
{
for(j=0;j<N+1; j++)
cout<<A[i][j]<<'\t';
cout<<endl;
}
for(k=0;k<N-1;k++)
{
S=A[k][k];
r=k;
i=k+1;
do
{
if(fabs(S)<fabs(A[i][k]))//选主元
{
S=A[i][k];
r=i;
}
i++;
}while(i<=N-1);

cout<<"A[i][k]="<<S<<'\t'<<"r="<<r<<'\t'<<i<<endl;

if(S==0)
{
cout<<"A为奇异"<<endl;

}
if(r!=k)//行交换
{
for(j=0;j<N+1;j++)
{
temp=A[k][j];
A[k][j]=A[r][j];
A[r][j]=temp;
}
}


for(i=0;i<N; i++)//输出
{
for(j=0;j<N+1; j++)
cout<<A[i][j]<<'\t';
cout<<endl;
}


for(i=k+1;i<N;i++)//消元
{
M=A[i][k]/S;
cout<<"计算乘子:"<<M<<endl;
for(j=k;j<N+1;j++)
A[i][j]-=M*A[k][j];
}

cout<<endl<<endl;
for(i=0;i<N;i++) //输出
{
for(j=0;j<N+1;j++)
cout<<A[i][j]<<'\t';
cout<<endl;
}
}

cout<<"方程组的解"<<endl;

for(i=N-1;i>=0;i--)//回代
{
S=0;
j=i+1;
while(j!=N)
{
S+=A[i][j]*A[j][N+1];
j++;

}

A[i][N+1]=(A[i][N]-S)/A[i][i];//保存答案
}

for(k=0;k<N;k++) //输出答案
cout<<A[k][N+1]<<'\t';
cout<<endl<<endl;

}
2007-09-13 21:33
远去的列车
Rank: 1
等 级:新手上路
威 望:2
帖 子:205
专家分:0
注 册:2007-8-7
收藏
得分:0 
double A[][]={0};
这个的问题

C++学习
2007-09-14 08:26
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 

楼上说的没错啊,在查错的时候,你双击提示的错误,系统会定位到你的错误的,这个错误很好找啊.


学习需要安静。。海盗要重新来过。。
2007-09-14 09:15
如果快乐↑
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-6-25
收藏
得分:0 
回复:(远去的列车)double A[][]={0};这个的问题

你因该指定二唯数组的行标和列标
我知道你可能是想让用户输入行列标
以前我也试过
不过好象不行
我查了些资料
c++不允许对数组大小做动态定义
也就是数组大小不依赖程序运行过程变量的值


不过可以用宏定义在在程序中来修改行列标
你可以试试


for(int i=0;i<无穷大;i++){我问牛鬼蛇神:我这样快乐好???答曰:你不快乐吗??}
2007-09-14 09:40
远去的列车
Rank: 1
等 级:新手上路
威 望:2
帖 子:205
专家分:0
注 册:2007-8-7
收藏
得分:0 
回复:(sunkaidong)楼上说的没错啊,在查错的时候,你...
我以为你知道,没详细说啊

这样的,须定义二维数组列的大小

a[][10] = {0}; 这样子

C++学习
2007-09-14 10:09
远去的列车
Rank: 1
等 级:新手上路
威 望:2
帖 子:205
专家分:0
注 册:2007-8-7
收藏
得分:0 
行的大小可定可不定  列大小够大保证不越界

可以想像,不指定列的大小时,这一个二维数组 {1,2,3,4,5,6} 你说是 a[2][3] 还是 a[3][2] ?

[此贴子已经被作者于2007-9-14 10:21:54编辑过]


C++学习
2007-09-14 10:10
glgrubby
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-9-8
收藏
得分:0 
哦知道了,谢谢大家了
2007-09-15 20:32
快速回复:[求助]这个错误是怎么回事啊?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020772 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved