问题 单项选择题

有以下程序: struct S{int n;int a[20];}; void f(int*a,int n) {int i; for(i=0;i<n-1;i++)a[i]+=i;} mainf() {int i;struct S s{10,{2,3,1,6,8,7,5,4,10,9}}; if(s.a,s.n); for(i=0;i<s.n;i++)printf("%d",s.a[i]);} 程序运行后的输出结果是______。

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

解析: 在主函数中定义了一个整型变量i和一个结构体变量s。在f()函数中定义了一个结构体指针类型的指针a,用它来引用数组中的元素;通过for循环语句将数组中最后一个元素外的其他元素分别加上由0开始的递增数据;最后输出。

单项选择题
单项选择题