问题 单项选择题

以下程序运行后的输出结果是 #include<stdio.h> #include<string.h> struct A { int a; char b[10]; double e; }; void f(struct A t); main() { struct A a={1001, "ZhangDa", 1098.0}; f(a); printf("%%d, %s, %6.1f\n", a.a, a.b, a.c); } void f(struct A t) {t.a=1002; strcpy(t.b, "ChangRong"); t.c=1202.0;}

A.1001, zhangDa, 1098.0

B.1002, ChangRong,1202.0

C.1001, ChangRong, 1098.0

D.1002, ZhangDa, 1202.0

答案

参考答案:A

解析: 本题考查结构体变量作为函数参数进行函数调用。结构变量作为函数参数,虽然函数f中改变了结构变量的值,但在main函数中,结构变量的值并没有改变,所以,输出的仍然是结构变量的初始化值。

单项选择题 A1型题
单项选择题