选择题 40.  有以下程序:
    #include
    typedef struct{int b,p;} A;
    void f(A c)/*注意:c是结构变量名*/{
    int j;
    C.b+=1;c.p+=2;}
    main(){
    i;Aa={1,2};
    f(a);
    printf("%d,%d\n",a.b,a.p);}
    程序运行后的输出结果是______。
【正确答案】 B
【答案解析】 在C语言中,数据只能从实参单向传递给形参,称为“按值”传递。也就是说,当简单变量作为实参时,用户不可能在函数中改变对应实参的值。所以本题中在main()函数f(a)语句中结构体实参a作为值,传递给函数f(c)中的形参c;这种值传递的方式不会对实参a产生任何影响,所以结构体实参a的值不会发生变化。