单选题
下面程序的运行结果为______。
#include<iostream>
using namespace std;
void reverse(int a[], int n)
{
int i, t;
for(i=0; i<n/2; i++)
{t=a[i]; a[i]=a[n-1-i]; a[n-1-i]=t;}
}
void main()
{
int b[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int i, s=0;
reverse(b, 8);
for(i=6; i<10; i++)s+=b[i];
cout<<s;
}
【正确答案】
A
【答案解析】[解析] Reverse函数的作用是将a数组中的n个变量的值翻转,即a[0]和a[n-1]值交换,a[1]和a[n-2]值交换,依此类推。Main函数中,reverse(b,8)翻转了b数组的前8个值,此后b的值为{8, 7, 6, 5, 4, 3, 2, 1, 9, 10},因此最后将b[6]到b[10]间的数相加结果为22。