问题 填空题

下列程序的运行结果为()。

#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");}

答案

参考答案:A00A,ChangRong,A0IH.0

解析:

[评析] 本题主要考查结构体变量赋初值,刚一开始给a赋值1001,b数组什"zhangDa",c赋值1098.0,由于被调函数中引用了结构体成员b,因此在使用strcpy时,strcpy(字符数组1,字符串2),作用是将字符串2复制到字符数组1中, b数组变成了"ChangRong",所以在最后输出时,结果为:1001,ChangRong,1098.0。

单项选择题
单项选择题