问题 单项选择题

执行以下程序后,a,b的值分别是( )。 #include <stdio.h> main() { int a,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(*p1)/(*p2)+7;printf("a=%d\n",a);printf("b=%d\n",b); }

A.-1,5

B.1,6

C.0,7

D.4,10

答案

参考答案:C

解析: a=p1==&m;等价于a=(P1==&m);将p1是否等于m的地址的逻辑值(0)赋给变量a;在b=(*p1)/(*p2)+7;语句中,(*P1)/(*p2)=0,因此将表达式的值7赋给变量b。

选择题
问答题 简答题