24小时热门版块排行榜    

查看: 1501  |  回复: 8
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zyj8119

木虫 (著名写手)

[交流] 【求助】为什么我编译了一个书本上的无错误的C++程序,却有这么多的错误?

CODE:
#include
#include
#include
using namespace std;
class bint
{
private:
        int n;
        double **a,*b,*x,eps;
        double **p,*r,*e;
public:
        bint(int nn)
        {
                int i;
                n=nn;
                a=new double*[n];
                for(i=0;i                 p=new double*[n];
                for(i=0;i                 r=new double[n];
                e=new double[n];
                b=new double[n];
                x=new double[n];
        }
        void input();
        void a_bint();
        void gauss();
        void output();
        bint()
        {
                int i;
                for(i=0;i                 delete[] a;
                for(i=0;i                 delete[] p;
                delete[] r,e,b,x;
        }
};

void bint::input()
{
        int i,j;
        char str1[20];
        cout<<"\n输入文件名:";
        cin>>str1;
        ifstream fin(str1);
        if(!fin)
        {cout<<"\n不能打开这个文件"<         for(i=0;i                 for(j=0;j>a[i][j];
                for(i=0;i>b[i];
                fin.close();
}

void bint::a_bint()
{
        int i,j,k;
        double q,qq;
        i=100;
        for(k=0;k<=n-1;k++)
                for(j=0;j<=n-1;j++)p[k][j]=a[k][j];
                for(k=0;k<=n-1;k++)r[k]=b[k];
                gauss();
                for(k=0;k                 q=1.0+eps;
                while(q>=eps)
                {
                        if(i==0)return;
                        i=i-1;
                        for(k=0;k                         {
                                e[k]=0.0;
                                for(j=0;j                                         e[k]=e[k]+a[k][j]*x[j];
                        }
                        for(k=0;k<=n-1;k++)r[k]=b[k]-e[k];
                                for(k=0;k<=n-1;k++)
                                        for(j=0;j<=n-1;j++)p[k][j]=a[k][j];
                                        gauss();
                                        q=0.0;
                                        for(k=0;k<=n-1;k++)
                                        {
                                                qq=fabs(r[k])/(1.0+fabs(x[k]+r[k]));
                                                if(qq>q)q=qq;
                                        }
                                        for(k=0;k<=n-1;k++)x[k]=x[k]+r[k];
                }
}
void bint::gauss()
{
        int *js,l,k,i,j,is;
        double d,t;
        js=new int[n];
        l=1;
        for(k=0;k<=n-2;k++)
        {
                d=0.0;
                for(i=k;i<=n-1;i++)
                        for(j=k;j<=n-1;j++)
                        {
                                t=fabs(p[i][j]);
                                if(t>d){d=t;js[k]=j;is=i;}
                        }
                        if(d+1.0==1.0)l=0;
                        else
                        {if(js[k]!=k)
                        for(i=0;i<=n-1;i++)
                        {
                                t=p[i][k];
                                p[i][k]=p[i][js[k]];
                                p[i][js[k]]=t;
                        }
                        if(is!=k)
                        {
                                for(j=k;j<=n-1;j++)
                                {
                                        t=p[k][j];
                                        p[k][j]=p[is][j];
                                        p[is][j]=t;
                                }
                                    t=r[k];r[k]=r[is];r[is]=t;
                        }
                }
                        if(l==0)
                        {
                                delete[] js;
                                cout<<"\n系数矩阵奇异!无解."<                                 return;
                        }
                        d=p[k][k];
                        for(j=k+1;j<=n-1;j++)
                                p[k][j]=p[k][j]/d;
                        r[k]=r[k]/d;
                        for(i=k+1;i<=n-1;i++)
                                p[i][j]=p[i][j]-p[i][k]*p[k][j];
                        r[i]=r[i]-p[i][k]*r[k];
        }
}
            d=p[n-1][n-1];
            if(fabs(d)+1.0==1.0)
                        {
                delete[] js;
                                cout<<"\n系数矩阵奇异!无解."<                             return;
                        }
            r[n-1]=r[n-1]/d;
            for(i=n-2;i>=0;i--)
                        {
                t=0.0;
                for(j=i+1;j<=n-1;j++)
                       t=t+p[i][j]*r[j];
                  r[i]=r[i]-t;
                        }
            js[n-1]=n-1;
          for(k=n-1;k>=0;k--)
          if(js[k]!=k)
                  {
               t=r[k];r[k]=r[js[k]];r[js[k]]=t;
                  }
       delete[] js;
    }

void bint::output()
{
        int i;
        char str2[20];
        cout<<"\n输出文件名:";
        cin>>str2;
        ofstream fout(str2);
        if(!fout)
        {cout<<"\n不能打开这个文件"<         fout<         for(i=0;i         {
                fout<                         cout<         }
        fout<         fout.close();
}

void main()
{
        bint c(4);
        c.input();
        c.a_bint();
        c.output();
}

[ Last edited by zyj8119 on 2010-10-12 at 01:57 ]
回复此楼
好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ajian04

禁虫 (正式写手)


zyj8119(金币+2):可能我有些是中文情况下输入的。 2010-10-12 10:57:59
余泽成(金币+1):谢谢参与应助! 2010-10-12 17:44:04
引用回帖:
Originally posted by zyj8119 at 2010-10-12 10:01:17:

是直接抄写的,是不是大括号的位置也是有要求的?????

位置应该没有要求,只是不要在中文输入法状态下输入就行了
9楼2010-10-12 10:09:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

zyj8119

木虫 (著名写手)

ajian04:欢迎交流~ 2010-10-12 08:16:06
错误是:
--------------------Configuration: 1 - Win32 Debug--------------------
Compiling...
bingtai.cpp
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(128) : error C2143: syntax error : missing ';' before 'return'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(139) : error C2501: 'd' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(139) : error C2065: 'p' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(139) : error C2065: 'n' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(139) : error C2109: subscript requires array or pointer type
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(139) : error C2109: subscript requires array or pointer type
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(140) : error C2143: syntax error : missing ';' before 'if'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(141) : error C2143: syntax error : missing ';' before '{'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(141) : error C2447: missing function header (old-style formal list?)
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(146) : error C2057: expected constant expression
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(146) : error C2466: cannot allocate an array of constant size 0
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(146) : error C2501: 'r' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(146) : error C2440: 'initializing' : cannot convert from 'int' to 'int []'
        There are no conversions to array types, although there are conversions to references or pointers to arrays
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2143: syntax error : missing ';' before 'for'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2143: syntax error : missing ')' before ';'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2143: syntax error : missing ';' before '>='
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2501: 'i' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2143: syntax error : missing ';' before '>='
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2143: syntax error : missing ';' before '--'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2501: 'i' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2086: 'i' : redefinition
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2143: syntax error : missing ';' before '--'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(147) : error C2059: syntax error : ')'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(148) : error C2143: syntax error : missing ';' before '{'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(148) : error C2447: missing function header (old-style formal list?)
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(154) : error C2057: expected constant expression
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(154) : error C2466: cannot allocate an array of constant size 0
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(154) : error C2501: 'js' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(154) : error C2440: 'initializing' : cannot convert from 'int' to 'int []'
        There are no conversions to array types, although there are conversions to references or pointers to arrays
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2143: syntax error : missing ';' before 'for'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2143: syntax error : missing ')' before ';'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2143: syntax error : missing ';' before '>='
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2501: 'k' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2143: syntax error : missing ';' before '>='
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2143: syntax error : missing ';' before '--'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2501: 'k' : missing storage-class or type specifiers
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2086: 'k' : redefinition
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2143: syntax error : missing ';' before '--'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(155) : error C2059: syntax error : ')'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(157) : error C2143: syntax error : missing ';' before '{'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(157) : error C2447: missing function header (old-style formal list?)
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(160) : error C2143: syntax error : missing ';' before 'delete'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(161) : error C2143: syntax error : missing ';' before '}'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(161) : error C2143: syntax error : missing ';' before '}'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(161) : error C2143: syntax error : missing ';' before '}'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(164) : error C2143: syntax error : missing ';' before '{'
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(164) : error C2447: missing function header (old-style formal list?)
Error executing cl.exe.

bingtai.obj - 47 error(s), 0 warning(s)
好好学习,天天向上。
2楼2010-10-12 01:50:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

ajian04:加油~ 2010-10-12 08:16:14
引用回帖:
Originally posted by zyj8119 at 2010-10-12 01:50:50:
错误是:
--------------------Configuration: 1 - Win32 Debug--------------------
Compiling...
bingtai.cpp
C:\Program Files\Microsoft Visual Studio\MyProjects\1\bingtai.cpp(128) : error C2143: sy ...

用VC++6.0编译。
好好学习,天天向上。
3楼2010-10-12 01:55:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ajian04

禁虫 (正式写手)

zyj8119(金币+3):大括号的位置有要求吧? 2010-10-12 10:03:41
是你直接抄写的吗?遗漏了很多符号,还有可能是你的编译环境不对,好好看看书上介绍的运行环境吧
4楼2010-10-12 08:15:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[公派出国] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +3 5lbyq5wrhb 2026-02-07 4/200 2026-02-08 08:47 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +3 5lbyq5wrhb 2026-02-07 4/200 2026-02-08 08:46 by vs90ilomwc
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +3 3rkserf6qr 2026-02-07 4/200 2026-02-08 08:27 by vs90ilomwc
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +5 2h7du0nuhk 2026-02-07 6/300 2026-02-08 08:26 by vs90ilomwc
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 6/300 2026-02-08 08:07 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 7/350 2026-02-08 08:06 by vs90ilomwc
[找工作] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 7/350 2026-02-08 07:46 by vs90ilomwc
[公派出国] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:32 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:27 by vs90ilomwc
[教师之家] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:26 by vs90ilomwc
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:07 by vs90ilomwc
[硕博家园] 博士延得我,科研能力直往上蹿 +8 偏振片 2026-02-02 8/400 2026-02-08 06:52 by liyeqik
[教师之家] 有院领导为了换新车,用横向课题经费买了俩车 +7 瞬息宇宙 2026-02-04 7/350 2026-02-07 21:47 by tfang
[有机交流] 酰胺脱乙酰基 10+5 chibby 2026-02-03 12/600 2026-02-07 19:29 by 江东闲人
[基金申请] 同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗 +4 hitsdu 2026-02-06 4/200 2026-02-07 13:07 by jurkat.1640
[基金申请] 有时候真觉得大城市人没有县城人甚至个体户幸福 +9 苏东坡二世 2026-02-04 10/500 2026-02-07 12:37 by 小毛球
[考博] 天津大学招2026.09的博士生,欢迎大家推荐交流(博导是本人) +4 a793625982 2026-02-05 5/250 2026-02-07 10:57 by a793625982
[公派出国] CSC & MSCA 博洛尼亚大学能源材料课题组博士/博士后招生|MSCA经费充足、排名优 +4 雨念 2026-02-01 6/300 2026-02-06 23:32 by MelissaPon
[基金申请] 面上项目申报 +3 Tide man 2026-02-01 3/150 2026-02-05 22:56 by god_tian
[教师之家] 遇见不省心的家人很难过 +18 otani 2026-02-03 22/1100 2026-02-04 11:06 by tangmnt
信息提示
请填处理意见