| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1161 人关注过本帖
标题:这个程序的执行过程是怎样的,结果为什么是8.000000?
只看楼主 加入收藏
息衍
Rank: 1
来 自:山东日照
等 级:新手上路
帖 子:13
专家分:0
注 册:2018-1-19
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
这个程序的执行过程是怎样的,结果为什么是8.000000?
#include<stdio.h>
void sub(double x, double *y, double *z)
{
    *y = *y - 1.0; *z = *z + x;
}
main()
{
    double a = 2.5, b = 9.0, *pa, *pb;
    pa = &a; pb = &b;
    sub(b - a, pa, pa);
    printf("%f\n", a);
}
搜索更多相关主题的帖子: 执行 过程 结果 double pb 
2018-01-20 16:26
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:20 
相当于:
double x;
x = b - a;
a = a - 1.0;
a = a + x;
printf("%f\n", a);
2018-01-20 16:49
息衍
Rank: 1
来 自:山东日照
等 级:新手上路
帖 子:13
专家分:0
注 册:2018-1-19
收藏
得分:0 
回复 2楼 吹水佬
嗯~~
*y其实就是*z,二者都是a
所以a=a-1.0;a=a+x;我知道了  谢谢!

2018-01-20 16:59
快速回复:这个程序的执行过程是怎样的,结果为什么是8.000000?
数据加载中...
 
   



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

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