标题:[求助]有点小麻烦关于函数
只看楼主
阿0
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-5-15
 问题点数:0 回复次数:11 
[求助]有点小麻烦关于函数

最近在作一个小软件的时候遇到了一个问题
就是,如:
#include<stdio.h>
#include<math.h>
int js(double a,double b,double c,double x,double y)
double a,b,c,d,e,f;
int js(double a,double b,double c,double x,double y)
{ double m,n;
m=a+b;
n=b+c;
x=m;y=n;
return 0
}
int main()
{a=10;
b=20;
c=30;
d=10;
js(a,b,c,d,e,f);
printf("e=%lf,f=%lf",e,f);
return 0;
}

显示结果e=0.0000f=0.00000


错在哪里啊?虽然问题有点弱智,但还是请各位大哥指点,万分感谢!


搜索更多相关主题的帖子: double include return 
2006-05-22 12:17
桂圆
Rank: 1
等 级:新手上路
威 望:1
帖 子:101
专家分:0
注 册:2006-5-15
得分:0 
e,f没有复初值??

2006-05-22 13:24
my1286
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2006-5-15
得分:0 
int js(double a,double b,double c,double x,double y)
js(a,b,c,d,e,f);
你自己看看这有什么不对,个数不一样

2006-05-22 13:31
my1286
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2006-5-15
得分:0 
应该不要那个d,可能就可以了

2006-05-22 13:32
金为床兮银为椅
Rank: 1
等 级:新手上路
帖 子:183
专家分:0
注 册:2006-3-20
得分:0 
虽然在函数js中做了修改,可是并没有将数值返回给变量,因此最后是初值,你没有定义那就是默认的值0

努力学习C、C++、LINUX、ORACLE、ENGLISH,累死为止。
2006-05-22 14:01
a402730324
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:1233
专家分:0
注 册:2005-12-1
得分:0 
以下是引用阿0在2006-5-22 12:17:00的发言:

最近在作一个小软件的时候遇到了一个问题
就是,如:
#include<stdio.h>
#include<math.h>
int js(double a,double b,double c,double x,double y)
double a,b,c,d,e,f;
int js(double a,double b,double c,double x,double y)
{ double m,n;
m=a+b;
n=b+c;
x=m;y=n;
return (x,y);
}
int main()
{a=10;
b=20;
c=30;
d=10;
printf("e=%lf,f=%lf",js(a,b,c,e,f));
return 0;
}

显示结果e=0.0000f=0.00000


错在哪里啊?虽然问题有点弱智,但还是请各位大哥指点,万分感谢!




我该了一下不知道对不对?


敢犯强汉者,虽远必诛!——陈汤 不知吾辈何时方能吐出此豪言壮语?
2006-05-22 14:01
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
得分:0 

6楼仍错。return (x,y)效果
仅相当于 return y
你知道吗?因为这(x,y)属于逗号表达式,
并不是一对double数。
5楼概念正确。


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-22 14:09
SunShining
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:31
帖 子:2215
专家分:0
注 册:2006-2-17
得分:0 

楼上的没错.

不过.其实和逗号表达式没什么关系..因为return()只有一个返回值

且只能返回一个值.所以 6楼想返回俩个值的想法就是错误的!


[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]
2006-05-22 14:44
金为床兮银为椅
Rank: 1
等 级:新手上路
帖 子:183
专家分:0
注 册:2006-3-20
得分:0 
为人要彻底,送佛送西天。。。。。。
#include<stdio.h>
#include<math.h>
int js(double a,double b,double c,double &x,double &y);
double a,b,c,d,e,f;
int js(double a,double b,double c,double &x,double &y)
{ double m,n;
m=a+b;
n=b+c;
x=m;y=n;
return 0;
}
int main()
{a=10;
b=10;
c=10;
d=10;
e = 10;
js(a,b,c,d,e);
printf("d=%lf,e=%lf",d,e);
return 0;
}
上面引用参数传递
下边是指针传递
#include<stdio.h>
#include<math.h>
int js(double a,double b,double c,double *x,double*y);
double a,b,c,d,e,f;
int js(double a,double b,double c,double *x,double *y)
{ double m,n;
m=a+b;
n=b+c;
*x=m;*y=n;
return 0;
}
int main()
{a=10;
b=10;
c=10;
d=10;
e = 10;
js(a,b,c,&d,&e);
printf("d=%lf,e=%lf",d,e);
return 0;
}

努力学习C、C++、LINUX、ORACLE、ENGLISH,累死为止。
2006-05-22 15:19
graphics
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-5-22
得分:0 
楼上的。为什么我用你上面一个传地址的  在编译的时候显示  说明语法错误。。。。而传指针就没有这个问题啊?

我爱生活。。我爱编程
2006-05-22 18:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-66200-1-1.html




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

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