24小时热门版块排行榜    

查看: 841  |  回复: 5

weilitian

金虫 (正式写手)

[求助] 帮忙看两个c程序~~灰常感谢

#include
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);
}这个程序是怎么运行的,pa到底是指向那个,看不懂。

#include

main()
{
printf("%d\n",NULL);

}
这个答案是0怎么来的
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

魂归何处?
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

断点~+++

金虫 (小有名气)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
weilitian: 金币+2, ★★★很有帮助 2012-08-15 18:59:27
xzhdty: 金币+1, 谢谢参与 2012-08-15 19:49:09
第一个程序、、pa指向的是a、根据函数的定义、、
sub(b-a,pa,pa);
pa=2.5-1=1.5;此时pa=1.5了。
pa=pa+x即1.5加6.5得8。
第二个;
一整形输出NULL
而在ASCII码的第一个字符是NULL,它的数值是0,
所以是0、、、嘿嘿
2楼2012-08-15 17:24:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weilitian

金虫 (正式写手)

灰常感谢~~送一个红花!
魂归何处?
3楼2012-08-15 17:36:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

flqcandy

木虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
xzhdty: 金币+1, 谢谢参与 2012-08-15 19:49:35
#include
void sub(double x,double *y,double *z)  //sub函数,参数(double类型x,double类型指针,double类型指针)
{
*y=*y-1.0;*z=*z+x;  //*y是取值,将y指向地址中的值取出来,根据下面调用情况,应给是a=a-1.0;a=a+6.5;
}
main()
{
double a=2.5,b=9.0,*pa,*pb;
pa=&a;pb=&b;   //将a的地址赋给pa,b的地址赋给pb
sub(b-a,pa,pa);  //调用上面定义的函数 sub(6.5,a的地址,a的地址)
printf("%f\n",a);
}
第二个,NULL的ASCII为0,printf("%d\n",NULL),输出的是NULL的整型值
4楼2012-08-15 18:13:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weilitian

金虫 (正式写手)

引用回帖:
2楼: Originally posted by 断点~+++ at 2012-08-15 17:24:05
第一个程序、、pa指向的是a、根据函数的定义、、
sub(b-a,pa,pa);
pa=2.5-1=1.5;此时pa=1.5了。
pa=pa+x即1.5加6.5得8。
第二个;
一整形输出NULL
而在ASCII码的第一个字符是NULL,它的数值是0,
所以是0、、 ...

灰常感谢~~送一个红花!
魂归何处?
5楼2012-08-15 18:57:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weilitian

金虫 (正式写手)

引用回帖:
4楼: Originally posted by flqcandy at 2012-08-15 18:13:16
#include<stdio.h>
void sub(double x,double *y,double *z)  //sub函数,参数(double类型x,double类型指针,double类型指针)
{
*y=*y-1.0;*z=*z+x;  //*y是取值,将y指向地址中的值取出来,根据下面调 ...

谢了
魂归何处?
6楼2012-08-15 18:58:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 weilitian 的主题更新
信息提示
请填处理意见