若有以下程序 #include void sp(int *a) { int b=2; a=&b;*a = *a * 2; printf("%d,", *a); } main() { int k=3, *p=&k; sp(p); pri

admin2019-08-18  22

问题 若有以下程序
#include
void  sp(int  *a)
{  int  b=2;
a=&b;*a = *a * 2;   printf("%d,", *a);
}
main()
{  int  k=3, *p=&k;
sp(p);   printf("%d,%d\n", k, *p);
}
则程序的输出结果是

选项 A、4,3,3
B、4,3,4
C、6,3,6
D、6,6,6

答案A

解析 首先在主函数中给整型变量k赋值为3,将变量k的地址赋给指针变量p;调用sp函数,将实参p的值传给形参a,在sp函数中,指针变量a又获得变量b的地址,通过运算后,输出a的值为4;返回主函数,输出k的值和p的值为3和3。因此A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/R4Rp777K
0

随机试题
最新回复(0)