问题 单项选择题

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

答案

参考答案:C

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

单项选择题
单项选择题