下列程序的运行结果为【 】。 #include<stdio.h> #include<string.h> { int a; char b[10]; double c; }; void f (str

admin2009-09-28  30

问题 下列程序的运行结果为【  】。
       #include<stdio.h>
       #include<string.h>
       {  int a; char b[10]; double c;  };
       void f (struct A *t);
       main()
       {  struct A a={1001,"ZhangDa",1098.0};
          f(&a) ;  printf("%d,%s,%6.lf\n",a.a,a.b,a.C);
       }
       void f(struct A*t)
       { strcpy(t->b, "ChangRong");}

选项

答案1001,ChangRong,1098.0

解析 本题主要考查结构体变量赋初值,刚一开始给a赋值1001,b数组什"zhangDa",c赋值1098.0,由于被调函数中引用了结构体成员b,因此在使用strcpy时,strcpy(字符数组1,字符串2),作用是将字符串2复制到字符数组1中, b数组变成了"ChangRong",所以在最后输出时,结果为:1001,ChangRong,1098.0。
转载请注明原文地址:https://kaotiyun.com/show/J9Wp777K
0

最新回复(0)