问答题 函数fun的功能是:逆置数组元素中的值。例如:若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、9,则逆置后依次为:9、8、7、6、5、4、3、2、1。形参n给出数组中数据的个数。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!1 #include<stdio.h>2 void fun(int a[],int n)3 { int i,t;4 /**********found**********/5 for(2=0 ; i<__1__; i++)6 {7 t=a[i];8 /**********found**********/9 a[i]=a[n-1- __2__];10 /**********found**********/11 __3__=t;12 }13 }14 main()15 {int b[9]={1,2,3,4,5,6,7,8,9},i ;16 printf(''\nThe original data:\n'');17 for(i=0;i<9;i++)18 printf(''%4 d'',b[i]);19 printf(''\n'');20 fun(b,9);21 printf(''\nThe data after invert:\n'');22 for(2=0;i<9;i++)23 printf(''%4d'',b[i]);24 printf(''\n'');25 }
【正确答案】正确答案:(1)n/2 (2)i (3)a[n-i-1]
【答案解析】解析:函数fun的功能是将数组中的元素倒置。 第一空:由审题分析可知,总共交换n/2次,故循环的终止条件为i等于n/2,故第一空处应为“n/2”。 第二空:a[0]和a[n-1]交换,a[1]和a[n-2]交换…,因此a[i]和a[n-i-1]交换,故第二空处应为“i”。 第三空:“t=a[i];a[i]=a[n-1-i];”所以第三空处是把t值赋值a[n-1-i],故第三空处应为“a[n-1-i]”。