选择题   有以下程序:
    #include<stdio.h>
    void fun(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;
    fun(b-a,pa,pb);
    printf('%f\n',a);
    }
    程序运行后的输出结果是______。
 
【正确答案】 C
【答案解析】main()函数定义两个double类型的变量a、b,分别赋初值为:2.5、9.0,另外定义两个double类型的指针变量pa、pb,其中pa指向a,pb指向b;然后将b-a、pa、pb传给函数fun,此时x的值为7.5,y指向a,z指向b;所以*y=*y-1.0,是将变量a的值减去1.0赋给a,a的值为1.5;*z=*z+x,是将变量b的值加上7.5赋给b,b的值为16.5;fun()函数执行完毕后,输出a的值为1.5。故本题答案为C选项。