| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 372 人关注过本帖
标题:为什么没有结果?
只看楼主 加入收藏
liuxiaodong
Rank: 1
等 级:新手上路
帖 子:23
专家分:6
注 册:2010-3-26
结帖率:42.86%
收藏
已结贴  问题点数:10 回复次数:3 
为什么没有结果?
#include <stdio.h>
#include <math.h>
float f (float x)
{
    float y;
    y = x * x * x + 5 * x * x + 16 * x - 80;
    return y;
}
float xpoint (float x1, float x2)
{
    float x;
    x = (x1 * f (x2) - x2 * f (x1)) / (f(x2) - f (x1));
    return x;
}
float root (float x1, float x2)
{
    float x, y, y1;
    y1 = f (x1);
    do
    {
        x = xpoint (x1, x2);
        y = f (x);
        if (y * y1 > 0)
        {
            y1 = y;
            x1 = x;
        }
        else
        {
            x2 = x;
        }
    }
    while (fabs (y) > 0.00001);
    return x;
}
void main ()
{
    float x, x1, x2, y1, y2;
    do
    {
        printf ("please enter x1 and x2:");
        scanf ("%f%f", &x1, &x2);
        y1 = f (x1);
        y2 = f (x2);
    }
    while (y1 * y2 > 0);
    x = root (x1, x2);
    printf ("a root is:%f\n", x);
}
搜索更多相关主题的帖子: 结果 
2010-05-06 18:47
skyangel999
Rank: 1
等 级:新手上路
帖 子:3
专家分:3
注 册:2010-4-22
收藏
得分:3 
    do
    {
        printf ("please enter x1 and x2:");
        scanf ("%f%f", &x1, &x2);
        y1 = f (x1);
        y2 = f (x2);
    }
    while (y1 * y2 > 0);


如果while值为真,要一直输下去中吗?
2010-05-06 23:21
jcslt
Rank: 8Rank: 8
来 自:90-xx.com
等 级:蝙蝠侠
帖 子:251
专家分:975
注 册:2009-10-10
收藏
得分:7 
//输入x1,x2一直到对应的y1,y2乘积小于0为止,计算此时root(x1,x2)
//例如你输入2,3就有结果出来了!
//程序没问题

www.
2010-05-07 00:23
liuxiaodong
Rank: 1
等 级:新手上路
帖 子:23
专家分:6
注 册:2010-3-26
收藏
得分:0 
回复 2楼 skyangel999
是,直到y1与y2的符号相反为止
2010-05-07 12:39
快速回复:为什么没有结果?
数据加载中...
 
   



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

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