下面的程序使用了函数指针,其运行结果是______。#includeimage.pngstdio.h>#includeimage.pngmath.h>intf1(inta){returna*a;}intf2(inta){returna*a*a;}voidmain(){intx=3,y1,y2,y3,y4;f=f1;y1=(*f)(x);y2=f1(x);f=f2;y3=f(x);y4=f2(x);printf("y1=%d,y2=%d,y3=%d,y4=%d\n",y1,y2,y3,y4);}
- A.y1=27, y2=9, y3=9, y4=27
- B.y1=9, y2=9, y3=27, y4=27
- C.y1=9, y2=27, y3=9, y4=27
- D.y1=27, y2=27, y3=9, y4=9
正确答案及解析
正确答案
B
解析
本题考查C语言函数指针的基础知识。仔细阅读程序,正确理解函数指针并将参数正确代入函数,可得到y1=9,y2=9,y3=27,y4=27的结果。





