| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1041 人关注过本帖
标题:我是个新手哇,刚刚入门C 写了个一元二次方程,结果不知道错哪了。请帮忙!
只看楼主 加入收藏
a594034788
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-3-29
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:10 
我是个新手哇,刚刚入门C 写了个一元二次方程,结果不知道错哪了。请帮忙!

# include <stdio.h>
# include <math.h>

int main(void)
{
    //把三个系数保存在计算机中
    int a = 1:  //=不表示相等,表示赋值
    int b = 2:
    int c = 3:
    double delta: //delt存放的是b*b-4*a*b
    double x1: //存放一元二次方程的其中一个解?
    double x2: //存放一元二次方程的其中一个解

    delta = b*b-4*a*c;

    if (delta>0)
    {
        x1 = (-b+sqrt(delta))/(2*a);
        x2 = (-b+sqrt(delta))/(2*a);
        printf("该一元二次方程有两个解, x1 =%f, x2 = %f\n",x1,x2);
    }
    else if (delta == 0)
    {   x1 = (-b)/(2*a);
        x2 = x1: //右边赋给左边?
        printf("该一元二次方程有唯一解,x1 = x2 = %f\n", x1);
    }
    else
    {
        printf("无解\n");
    }
}   就是这个,运行时提示有25个错误,是用win-TC 写的。

[ 本帖最后由 a594034788 于 2014-3-29 17:41 编辑 ]
搜索更多相关主题的帖子: include 计算机 double 
2014-03-29 12:59
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:1 
你把分号 -- ;   都打成冒号了--- : 。改过来就好了。
2014-03-29 13:18
ecssse
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2014-3-29
收藏
得分:1 
# include <stdio.h>
# include <math.h>

int main(void)
{
    //把三个系数保存在计算机中
    int a = 1 //=不表示相等,表示赋值
    int b = 2
    int c = 3
    double delta: //delt存放的是 b*b - 4*a*b
    double x1: //存放一元二次方程的其中一个解?
    double x2: //存放一元二次方程的其中一个解

    delta=b*b-4*a*c

    if (delta > 0)
    {
        x1=(-b + sqrt(delta))/(2*a)
        x2=(-b + sqrt(delta))/(2*a)
        printf("该一元二次方程有两个解, x1 =%f, x2 = %f\n",x1,x2)
    }
    else if (delta==0)
    {   x1=(-b )/(2*a)
        x2=x1//右边赋给左边?
        printf("该一元二次方程有唯一解,x1 = x2 = %f\n", x1)
    }
    else
    {
        printf("无解\n")
    }
}


还有就是运用加减乘除符号,大于小于符号是不要空格;
每一句语言后面是分号不是冒号!!
收到的鲜花
  • a5940347882014-03-29 17:40 送鲜花  1朵  
2014-03-29 16:23
a594034788
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-3-29
收藏
得分:0 
回复 3楼 ecssse
谢谢你,这论坛真好用!很开心是这论坛的一员。
2014-03-29 17:18
a594034788
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-3-29
收藏
得分:0 
回复 2楼 ying8501
谢谢你!
2014-03-29 17:21
a594034788
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-3-29
收藏
得分:0 
回复 3楼 ecssse
# include <stdio.h>
# include <math.h>

int main(void)
{
    //把三个系数保存在计算机中
    int a = 1:  //=不表示相等,表示赋值
    int b = 2:
    int c = 3:
    double delta: //delt存放的是b*b-4*a*b
    double x1: //存放一元二次方程的其中一个解?
    double x2: //存放一元二次方程的其中一个解

    delta = b*b-4*a*c;

    if (delta>0)
    {
        x1 = (-b+sqrt(delta))/(2*a);
        x2 = (-b+sqrt(delta))/(2*a);
        printf("该一元二次方程有两个解, x1 =%f, x2 = %f\n",x1,x2);
    }
    else if (delta == 0)
    {   x1 = (-b)/(2*a);
        x2 = x1: //右边赋给左边?
        printf("该一元二次方程有唯一解,x1 = x2 = %f\n", x1);
    }
    else
    {
        printf("无解\n");
    }
}            我改了,还是不行啊。我用的是win-tc
2014-03-29 17:29
SKYYYF
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:71
专家分:184
注 册:2012-9-23
收藏
得分:1 
回复 6楼 a594034788
定义变量后面也要用分号 int a=1;
下面的定义变量后面也是这样
2014-03-29 19:08
怪叔叔
Rank: 4
来 自:陕西
等 级:业余侠客
威 望:1
帖 子:113
专家分:234
注 册:2013-9-22
收藏
得分:1 
汗~ ~ ~ ~ ~ ~好好看书,好好看书
2014-03-29 23:03
ansonzxy
Rank: 2
等 级:论坛游民
帖 子:15
专家分:42
注 册:2014-3-30
收藏
得分:1 
你的
x1 和 x2 表达式不是一样的么。。。,请看!

# include <stdio.h>
# include <math.h>

int main(void)
{
    char ch;
    do  // do...while(表达式);   人机对话
    {
        printf("请输入一元二次方程的系数a, b, c,并用空格分隔输入:\n");//用户提示语言
        
        double a, b, c;
        scanf("%d %d %d", &a, &b, &c); //从用户获得一元二次方程的系数
        fflush(stdin);
        
        
        double delta, x1, x2;
        
        delta = b * b - 4 * a * c;// delta 的数学定义

        //由delta的三种情况来判定
        
        
        if ( delta > 0)
        {
            printf("方程有两个不同的解:\n");
            
            x1 = ( - b + sqrt(delta) ) / ( 2 * a);//计算两个解
            x2 = ( - b - sqrt(delta) ) / ( 2 * a);
            printf("x1 = %d, x2 = %d\n", x1, x2);
        }
        else if( 0 == delta )
        {
            printf("方程有两个相同的解:\n");
            
            x1 = ( - b ) / ( 2 * a);//计算两个解
            x2 = x1;
            printf("x1 = x2 = %d\n", x1);   
        }
        else
        {
            printf("方程无解\n");
        }
        
        printf("是否继续运行程序,是的请输入Y 或 y,否则请输入任意键\n");
        scanf("%c", &ch);
        fflush(stdin);
        
    }while( ch == 'Y' || ch == 'y');
    //----------------------------
   
   
   
    return 0;
}

[ 本帖最后由 ansonzxy 于 2014-3-30 18:05 编辑 ]
2014-03-30 18:04
ws3507158
Rank: 2
等 级:论坛游民
帖 子:7
专家分:56
注 册:2013-12-28
收藏
得分:1 
加油哈!!记住了是分号哈
2014-04-01 10:55
快速回复:我是个新手哇,刚刚入门C 写了个一元二次方程,结果不知道错哪了。请帮 ...
数据加载中...
 
   



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

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