| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 598 人关注过本帖
标题:[求助]怎样编写参数数目不确定的程序?
只看楼主 加入收藏
guoshimin
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-1-26
收藏
 问题点数:0 回复次数:9 
[求助]怎样编写参数数目不确定的程序?

在毕业设计中遇到这样一类问题:要编定一个通用子程序,但参数个数是变化的。举个例子:要求方程ax*x+bx+c=0的实根,参数a、b、c之中的一个或数个(反正数目不定)在不同的场合要求用实参传值给它。我编写的程序如下:

double f(double pc[],double x)
{ return(pc[0]*x*x-pc[1]*x+pc[2]);}

/********** 弦截法求方程实根 **********/

double Root(double x1,double x2,double ec,double (*fx)(),double pc[])
{
double x,y,y1;
y1=(*fx)(pc,x1);
do
{
x=(x1*(*fx)(pc,x2)-x2*(*fx)(pc,x1))/((*fx)(pc,x2)-(*fx)(pc,x1)); /* 求弦与x轴的交点 */
y=(*fx)(pc,x);
if(y*y1>0)
{
y1=y;
x1=x;
}
else x2=x;
}while(fabs(y)>ec);
return(x);
}

main()
{
double x,p[3];
p[0]=1,p[1]=2,p[2]=1;
x=Root(0,10,0.001,f,p);
printf("x=%lf\n",x);
}

但实际上是不正确的。
谁能帮我解决一下问题呢?
搜索更多相关主题的帖子: 参数 编写 
2007-04-25 09:05
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
收藏
得分:0 
函数重载可以解决吧

这个社会太复杂。。。
2007-04-25 10:04
限量版猪头
Rank: 2
等 级:论坛游民
威 望:1
帖 子:165
专家分:30
注 册:2006-2-5
收藏
得分:0 
楼上正解!

如果只用C的话,写几个不同名的函数就好了,那所以可能枚举出来

2007-04-25 10:12
crackerwang
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:833
专家分:0
注 册:2007-2-14
收藏
得分:0 
以下是引用海蓝啸在2007-4-25 10:04:29的发言:
函数重载可以解决吧

能不能说的详细点啊.
我也好象知道


2007-04-25 11:47
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
收藏
得分:0 
函数重载就是函数名相同,参数不同,一个函数可以重载,实现多用。。。书上有介绍的

这个社会太复杂。。。
2007-04-25 12:01
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
收藏
得分:0 
C不支持重载。。。C++可以
不过C你可以定义多个函数来解决这个问题

[此贴子已经被作者于2007-4-25 12:04:02编辑过]


这个社会太复杂。。。
2007-04-25 12:02
guoshimin
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-1-26
收藏
得分:0 
我不想用C++。我正在用C做毕业设计,如果要写不同名的函数,那就不是几个的问题了,是重复劳动很多次!C++不是由C编出来的吗?!C++可以,C也应该可以才对啊!不过不知道方法如何。我上边的方法也不知道有什么错误,谁能指正一下啊??
2007-04-25 14:52
zy1437zy
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-4-25
收藏
得分:0 
路过。
呵呵!~
2007-04-25 14:59
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2007-04-25 15:19
I喜欢c
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:64
帖 子:1749
专家分:0
注 册:2007-3-2
收藏
得分:0 
以下是引用crackerwang在2007-4-25 11:47:45的发言:

能不能说的详细点啊.
我也好象知道

c++ 才有~``


 我是指针,却丢失了目标地址!          我是循环,却缺少了结束条件!      我是函数,却没有人来调用!   
2007-04-25 16:08
快速回复:[求助]怎样编写参数数目不确定的程序?
数据加载中...
 
   



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

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