永发信息网

编写函数,对传送出来的两个浮点数求出和值与差值并通过形参传送回调用函数

答案:2  悬赏:50  手机版
解决时间 2021-03-23 15:36
  • 提问者网友:世勋超人
  • 2021-03-22 22:53
编写函数,对传送出来的两个浮点数求出和值与差值并通过形参传送回调用函数
最佳答案
  • 五星知识达人网友:山河有幸埋战骨
  • 2021-03-22 23:15
函数只能有一个返回值, 如果有多个值要从函数传回被调用方,只能使用地址传递和引用传递,标准C只用地址传递, 没有值引用传递,C++可以使用引用传递。地址传递代码如下:
#include 

void fun1(float a, float b, float * x, float * y)
{
*x = a + b;
*y = a - b;
}

int main()
{
float a = 10, b=20, ans1, ans2;
fun1(a, b, &ans1, &ans2);
printf("%f,%f
", ans1, ans2);
}追问通过形参传送回调用函数 是什么意思 (追答#include "stdio.h"

void fun(int a, int * b)
{
a = 20;
*b = 21;
printf("in function:
%d %d
", a, *b);
}

void main()
{
int a, b;
a = 10;
b = 11;
printf("before function:
%d %d
", a, b);
fun(a, &b);
printf("after function:
%d %d
", a, b);

}

输出是:
before function:
10 11
in function:
20 21
after function:
10 21


a的没有改变 b的值改变了
全部回答
  • 1楼网友:山君与见山
  • 2021-03-23 00:48
//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
void fun(double a,double b,double *pa,double *ps){
*pa=a+b;
*ps=a-b;
}
void main(void){
double a,b,f_add,f_sub;
printf("Type 2 floating point numbers...\n");
scanf("%lf%lf",&a,&b);
fun(a,b,&f_add,&f_sub);
printf("The add is %f.\nThe sub is %f.\n",f_add,f_sub);
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯