有以下程序 void fun( 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;} } main() { int k[1

admin2019-08-10  22

问题 有以下程序
void fun( int a[], int n) {
int i, t; for(i=0; i<n/2; i++)
{
t=a;  a=a[n-1-i];  a[n-1-i]=t;}
}
main()
{  int  k[10]={1,2,3,4,5,6,7,8,9,10}, i;
   fun(k,5);
   for(i=2; i<8; i++) printf("%d", k);
   printf("\n");
}
程序的运行结果是

选项 A、876543
B、321678
C、1098765
D、345678

答案A

解析 函数fun(int a[ ],int n)的功能是实现整型数组a[ ]元素的逆置操作。在主函数中当执行fun(k,5)时,对k[10]中的子数组k[5]={1,2,3,4,5}的首尾元素进行逆置,此时k[10]={5,4,3,2,1,6,7,8,9,10}。所在循环语句中输出从第2~7个数组元素时,其值分别为321678。
转载请注明原文地址:https://jikaoti.com/ti/sCf0FFFM
0

最新回复(0)