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

admin2009-01-15  20

问题 执行以下程序后,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

答案4

解析 a=p1==&m;等价于a=(P1==&m);将p1是否等于m的地址的逻辑值(0)赋给变量a;在b=(*p1)/(*p2)+7;语句中,(*P1)/(*p2)=0,因此将表达式的值7赋给变量b。
转载请注明原文地址:https://kaotiyun.com/show/nEXp777K
0

最新回复(0)