| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 512 人关注过本帖
标题:大神们,帮忙看看,为什么不能输入b[i],
只看楼主 加入收藏
珑晚衣
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2014-3-5
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
大神们,帮忙看看,为什么不能输入b[i],
#include<stdio.h>
#include<math.h>
#define N 20
#define EPSILON 0.000000001
void main()
{
    int i,j,k,n;
    double a[N][N];
    double b[N];
    double l[N][N];
    double t;
    printf("数组的维数n\n");
    scanf("%d",&n);
    printf("输入a[i][j]\n");
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
            scanf("%lf\n",&a[i][j]);
    }
    printf("输入b[i]\n");
    for(i=0;i<n;i++)
    {
        scanf("%lf\n",&b[i]);
    }

    for(k=0;k<n-1;k++)
    {
        t=fabs(a[k][k]);
        /*找列主元*/
        for(i=k+1;i<n;i++)
        {
            if(t<fabs(a[i][k]))
                t=a[i][k];
        }
        for(j=k;j<n;j++)
        {
            t=a[i][j];
            a[i][j]=a[k][j];
            a[k][j]=t;
        }
        t=b[i];
        b[i]=b[k];
        b[k]=t;
        for(i=k+1;i<n;i++)
        {
            l[i][k]=-a[i][k]/a[k][k];
            b[i]=b[i]-l[i][k]*b[k];
            for(j=k;j<n;j++)
                a[i][j]=a[i][j]+a[k][j]*l[i][k];
        }
    }
    printf("检验最后的方程是否为下三角矩阵\n");
    for(i=0;i<n;i++)
        for(j=0;j<n;j++)
            printf("%10.6f",a[i][j]);
    printf("\n");
    /*回代过程*/
    b[n-1]=b[n-1]/a[n-1][n-1];
    for(i=n-2;i>-1;i--)
    {
        for(j=i+1;j<n;j++)
            b[i]=b[i]-b[j]*a[i][j];
        b[i]=b[i]/a[i][i];
    }
    printf("\n方程组的解\n");
    for(i=0;i<n;i++)
        printf("x%d=%lf",i+1,b[i]);


}
搜索更多相关主题的帖子: include double 
2014-03-06 21:45
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:7 
scanf函数里 为神马要出现\n字样呢

DO IT YOURSELF !
2014-03-06 21:48
珑晚衣
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2014-3-5
收藏
得分:0 
是这个原因么?我看看哈
2014-03-06 21:50
珑晚衣
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2014-3-5
收藏
得分:0 
回复 2楼 wp231957
好像还是不行呢
2014-03-06 21:55
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:7 
可以输入b[i]啊,只是运行结果不知道是不是你想要的,具体代码还没看,但程序确实可以运行。

数组的维数n
2
输入a[i][j]
1
2
3
4
输入b[i]
5
6
检验最后的方程是否为下三角矩阵
-92559631349317831000000000000000000000000000000000000000000000.000000-925596313
49317831000000000000000000000000000000000000000000000.000000  0.000000  1.000000


方程组的解
x1=-8.000000x2=9.000000请按任意键继续. . .

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2014-03-06 22:08
flysado
Rank: 1
等 级:新手上路
帖 子:1
专家分:7
注 册:2013-11-22
收藏
得分:7 
我怎么可以运行啊。语法没有错误撒
2014-03-06 22:32
珑晚衣
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2014-3-5
收藏
得分:0 
回复 6楼 flysado
是的,语法没错误,但是我执行时b[i]好像是随机给的,达不到我要的结果
2014-03-06 22:53
珑晚衣
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2014-3-5
收藏
得分:0 
回复 5楼 蚕头燕尾
我今晚上肯定被计算机耍了,运行了很多遍了,我再试试
2014-03-06 22:55
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 
嗯,记得先像2楼说的,把scanf里面的\n去掉

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2014-03-06 23:23
快速回复:大神们,帮忙看看,为什么不能输入b[i],
数据加载中...
 
   



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

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