有以下程序   struc STU {      char name[10];      int num; };   void f1(struct STU c)   { struct STU b={“LiSiGuo”,2042};     c=b; }

admin2006-03-15  31

问题 有以下程序
  struc STU {
     char name[10];
     int num; };
  void f1(struct STU c)
  { struct STU  b={“LiSiGuo”,2042};
    c=b; }
  void f2(struct STU *c)
  { struct STU  b={“SunDan”,2044};
   *c=b; }
  main( )
  { struct  STU   a={“YangSan”,2041},b={“WangYin”,2043 };
   f1(a);f2(&b);
   printf(“%d %d\n”,a.num,b.num); }
  执行后的输出结果是( )

选项 A、2041 2044
B、2041 2043
C、2042  2044
D、2042  2043

答案A

解析 经过函数调用,n()没有改变实参早的值,f2()改变了实参b的值。
转载请注明原文地址:https://kaotiyun.com/show/2aHp777K
0

最新回复(0)