有以下程序 #include struct S{ int n; int a[20]; }; void f(int *a, int n) { int i; for (i=0; i

admin2019-08-18  28

问题 有以下程序
#include
struct S{ int n; int a[20]; };
void f(int *a, int n)
{
int i;
for (i=0; ia+=i;
}
main()
{
int i;
struct S s={10, {2,3,1,6,8,7,5,4,10,9}};
f(s.a, s.n);
for (i=0; iprintf("%d,", s.a);
}
程序运行后的输出结果是( )。

选项 A、2,4,3,9,12,12,11,11,18,9,
B、3,4,2,7,9,8,6,5,11,10,
C、2,3,1,6,8,7,5,4,10,9,
D、1,2,3,6,8,7,5,4,10,9,

答案A

解析 函数f()的功能是将a指向的数组中前n-1个元素累加其在数组中的下标,所以输出结果为2,4,3,9,12,12,11,11,18,9,,答案选A。
转载请注明原文地址:https://kaotiyun.com/show/slRp777K
0

最新回复(0)