给定程序中,函数fun的功能是:将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 交换后为: 3 2 1 4 5 6 9 8 7 请在程

admin2018-09-27  25

问题 给定程序中,函数fun的功能是:将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。例如,若N=3,有下列矩阵:
1  2  3
4  5  6
7  8  9
交换后为:
3  2  1
4  5  6
9  8  7
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    注意:源程序存放在考生文件夹下的BLANK1.C中。
    不得增行或删行,也不得更改程序的结构!
1  #include<stdio.h>
2  #define N 4
3  /**********found**********/
4  void fun(int __1__,int n)
5  {  int i,s;
6  /**********found**********/
7  for( __2__ ;i++)
8  {  s=t
9  t=t[n-i-1];
10  /**********found**********/
11  t[n-1-i]=___3 ___;
12  }
13  }
14  main()
15  {int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10},i,j;
16  printf(’’\nThe original array:\n’’);
17    for(i=0;i<N;i++)
18  { for(j=0,j<N;j++)printf(’’%d’’,t[j]);
19   printf(’’\n’’);
20  }
21    fun(t,N);
22  printf(’’\nThe result is:\n’’);
23   for(i=0;i<N;i++)
24   {    for(j=0;  j<N; j++)printf(’’%d’’,t[j]);
25  printf(’’\n’’);
26    }
27  }

选项

答案(1)t[][N] (2)i=0;i<n (3)s

解析 函数fun的功能是将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换,在N×N的矩阵t中,i标识行下标,对角线元素为t,反向对角元素为t[N-i-1]。
    第一空:在主函数中fun函数的调用形式是“fun(t,N);”,t是二维数组名,故fun函数的第一个参数为指针,因此,第一空处应为“t[][N]”。第二空:fun函数的第二个参数n指明了矩阵的大小为n,对角线元素与反向对角线元素有n个,故循环有n次,因此,变量i从0开始,到n.1结束,因此,第一空处应为“i=0;i<n”。第三空:循环体内部是对角线元素与反向对角线元素的交换,“s=t;”s保存了对角元素t,故,第三处应填“s”。
转载请注明原文地址:https://kaotiyun.com/show/i8xp777K
0

最新回复(0)