| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 388 人关注过本帖
标题:不知道那里有问题
只看楼主 加入收藏
编程小蚊子
Rank: 1
等 级:新手上路
帖 子:12
专家分:5
注 册:2015-10-1
结帖率:75%
收藏
已结贴  问题点数:13 回复次数:6 
不知道那里有问题
#include <stdio.h>
#include <math.h>
 int main(void)
{
    float a,b,c,d,x1,x2;
    printf("输入a,b,c,\n");
    scanf("%f%f%f",&a,&b,&c);
    d=b*b-4.0*a*c;
    x1=(b-sqrt(d))/(2.0*a);
    x2=(b+sqrt(d))/(2.0*a);
 
    printf("%.2f\n",x1);
    printf("%.2f\n",x2);
}
搜索更多相关主题的帖子: include include 
2015-10-12 19:01
ztory
Rank: 2
等 级:论坛游民
威 望:1
帖 子:15
专家分:62
注 册:2015-10-12
收藏
得分:4 
怎么了?没感觉有什么问题啊。。。
你要知道sqrt只能算非负数的平方根,控制输入别让d<0就好了
2015-10-12 20:45
蓝色风暴cl
Rank: 8Rank: 8
来 自:新疆
等 级:蝙蝠侠
威 望:3
帖 子:163
专家分:704
注 册:2015-9-6
收藏
得分:4 
d别小于零就可以了。
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
#include <math.h>
#include<stdlib.h>
int flag = 1;
float a, b, c, d, x1, x2;
void input()
{
    printf("输入a,b,c,\n");
    scanf("%f%f%f", &a, &b, &c);
}
void check()
{
    d = b*b - 4.0*a*c;
    if (d < 0)
    {
        printf("输入错误!\n");
        printf("请重新输入数据:\n");
        input();
    }
    if (d>0)
        flag = 0;
}
void output()
{
    x1 = (b - sqrt(d)) / (2.0*a);
    x2 = (b + sqrt(d)) / (2.0*a);
    printf("%.2f\n", x1);
    printf("%.2f\n", x2);
}
int main(void)
{
    input();
    while (flag)
    {
        check();
    }
    output();
    system("pause");
}

欢迎大家加好友哦,多找我聊聊吧!
2015-10-12 22:44
刘敏bccn
Rank: 2
等 级:论坛游民
帖 子:22
专家分:21
注 册:2015-9-29
收藏
得分:4 
#include<stdio.h>
#include<math.h>

int main (void)
    {
    double a, b, c;
    double x1, x2, m;
    char ch;
    do
        {
        printf("请输入a:");
        scanf("%lf", &a);
        printf("请输入b:");
        scanf("%lf", &b);
        printf("请输入c:");
        scanf("%lf", &c);
        m = b*b - 4*a*c;
        if(m > 0)
            {
            x1 = (-b + sqrt(m)) / (2 * a);
            x2 = (-b - sqrt(m)) / (2 * a);
            printf("有两个实数解 x1 = %lf, x2 = %lf\n", x1, x2);
            }
        else if(m == 0)
            {
            x1= (-b) / (2 * a);
            printf("有一个实数解x1 = x2 = %lf\n", x1);
            }
        else
            printf("无实数解\n");
        printf("请是否要继续y/n\n");
        scanf(" %c", &ch);
        }while('y' == ch   || 'Y' == ch);
        return 0;   
    }
2015-10-13 09:31
刘敏bccn
Rank: 2
等 级:论坛游民
帖 子:22
专家分:21
注 册:2015-9-29
收藏
得分:0 
要有选择,根号下的值有大于零,等于零和小于零之分的,两个解,一个解,无解!
2015-10-13 09:34
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9026
专家分:54030
注 册:2011-1-18
收藏
得分:4 
不知道那里有问题 ------ 你总得告诉别人你遇到什么问题了吧?!输入了什么,输出了什么,期待输出什么。
2015-10-13 09:38
蓝色风暴cl
Rank: 8Rank: 8
来 自:新疆
等 级:蝙蝠侠
威 望:3
帖 子:163
专家分:704
注 册:2015-9-6
收藏
得分:0 
对,忘了=0了。

欢迎大家加好友哦,多找我聊聊吧!
2015-10-13 17:34
快速回复:不知道那里有问题
数据加载中...
 
   



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

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