啊哈磊_编程从这里起步

标题: 为什么程序再输入之后就自动关闭了 并没有输出 [打印本页]

作者: zyx6680599    时间: 2018-1-17 20:15
标题: 为什么程序再输入之后就自动关闭了 并没有输出
#include <stdio.h>
#include<stdlib.h>
void main()
{
    float a;
    float b;
    float c;
    float d;
    float e;
    float f;
    float g;
    float h;
    float x;
    float y;

        printf("ax+by+c=d,ex+fy+g=h\n");
        printf("enter a\n");
    scanf("%f",&a);
    printf("enter b\n");
    scanf("%f",&b);
    printf("enter c\n");
    scanf("%f",&c);
    printf("enter d\n");
    scanf("%f",&d);
    printf("enter e\n");
    scanf("%f",&e);
    printf("enter f\n");
    scanf("%f",&f);
    printf("enter g\n");
    scanf("%f",&g);
    printf("enter h\n");

    scanf("%f",&h);
    ax+by+c=d;
    ex+fy+g=h;







    printf("x is:%f\n",x);
    printf("y is:%f\n",y);

        return 0;
}


作者: 吴明程    时间: 2018-1-17 20:15
首先,你是怎么通过编译的?
ax+by+c=d;
ex+fy+g=h;
这里就有明显的错误
C语言不是方程式


作者: 吴明程    时间: 2018-1-17 20:57
而且最后你没加system("pause");

作者: zyx6680599    时间: 2018-1-18 12:06
吴明程 发表于 2018-1-17 20:56
首先,你是怎么通过编译的?
ax+by+c=d;
ex+fy+g=h;

那咋办?我用a*x+b*y+c==d也不行
作者: 4399APPLE    时间: 2018-1-18 12:14
zyx6680599 发表于 2018-1-18 12:06
那咋办?我用a*x+b*y+c==d也不行

你以为它会自动解方程吗
别天真了
作者: zyx6680599    时间: 2018-1-18 12:14
吴明程 发表于 2018-1-17 20:56
首先,你是怎么通过编译的?
ax+by+c=d;
ex+fy+g=h;

我按你说的做了之后程序显示x is 0.000000,y is 0.000000   而真正的结果显然不是这个
作者: 4399APPLE    时间: 2018-1-18 18:12
zyx6680599 发表于 2018-1-18 12:14
我按你说的做了之后程序显示x is 0.000000,y is 0.000000   而真正的结果显然不是这个

再重复一遍
不会自动解方程
想解方程(组)的话请手写高斯消元
作者: zyx6680599    时间: 2018-1-18 19:53
本帖最后由 zyx6680599 于 2018-1-18 19:57 编辑

@4399apple
我消元之后成 x==((b*h-b*g)/f+(c-d))/((b*e)/f-a);
    y==(h-g-e*x)/f;
也是一样




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2