选择题

有以下程序

#include
typedef struct {int b, p;} A;
void f(A c)
{
   int j;
   c.b+=1;
   c.p+=2;
}
void main()
{
   int i;
   A a={1,2};
   f(a);
   printf("%d,%d\n", a.b, a.p);
}

程序运行后的输出结果是(     )。

【正确答案】 B
【答案解析】

考查结构体变量作为函数实参整体传递, 也是一种值传参, 形参的变化不能影响到实参, 所以调用函数 f(a)对 a 中的数据没有影响, 输出结果为 1,2, 答案选择 B 选项。