有以下程序 int *f(znt *x,int *y) { if(*x<*y) return X; else return y; } main() { int

admin2013-02-23  15

问题 有以下程序    int  *f(znt  *x,int  *y)    {    if(*x<*y)         return  X;         else         return  y;    }    main()    {  int  a=7,b=8,*p,*q,*r;       p=&a;  q=&b;       r=f(p,q);       printf("%d,%d.%d\n",*p,*q,*r);    }    执行后输出结果是

选项 A、7,8,8
B、7,8,7
C、8,7,7
D、8,7,8

答案2

解析 本题定义了一个返回值为指针的函数f(),此函数有两个指针型的形参x和 y)该函数的功能,是返回x和y指向的变量中值较小的那个指针变量。主函数中定义了两个指针变量p和小并让它们指向了变量a和b,调用函数f(),返回指向的变量值较小的指针变量,r的值为指针变量 p的值(变量a的地址),因此最后输出的*p、*q和,r的值是7,8和7。所以,B选项为所选。
转载请注明原文地址:https://jikaoti.com/ti/YCB0FFFM
0

最新回复(0)