给定程序中,函数fun的功能是:将a所指4×3矩阵中第k行的元素与第0行元素交换。 例如,有下列矩阵: 1 2 3 4 5 6 7 8 9 10 1

admin2016-12-06  40

问题 给定程序中,函数fun的功能是:将a所指4×3矩阵中第k行的元素与第0行元素交换。
  例如,有下列矩阵:
    1      2       3
    4      5       6
    7      8       9
    10    11    12
  若k为2,程序执行结果为:
    7     8     9
    4     5     6
    1     2     3
    10    11    12
    请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
    注意:部分源程序在文件BLANK1.C中。
   不得增行或删行,也不得更改程序的结构!
   试题程序:
1   #include<stdio.h>
2   #define N 3
3   #define M 4
4   /*********found*********/
5   void fun(int(*a)[N],int 【1】)
6  {int i,temp;
7   /*********found*********/
8   for(i=0;i<【2】;i++)
9  {temp=a[0]
10  /*********found*********/
11   a[0]=【3】
12   a[k]=temp ;
13    }
14   }
15   main()
16   {int x[M][N]={{1,2,3),{4,5,6},{7,8,9},{10,11,12}},i,j ;
17    printf(’’The array before mov-ing:\n\n’’);
18    for(i=0;i<M;i++)
19    {for(j=0;j<N;j++)
20  printf(’’%3 d’’,x[j]);
21    printf(’’\n、n’’);
22    }
23    fun(x,2);
24    printf(’’The array after mov-ing:\n\n’’);
25    for(i=0;i<M;i++)
26    {for(j=0;j<N;j++)
27    printf(’’%3 d’’,x[j]);
28   printf(’’\n\n’’);
29    }
30  }

选项

答案(1)k (2)N (3)a[k][i]

解析 填空1:变量k在函数体fun中已经使用,但在函数体中没有定义,肯定是在函数的形参中定义的,所以应填k。
填空2:数组共N列,所以应填N。
填空3:这部分语句实现的功能是变量值的交换,所以应填a[k]
转载请注明原文地址:https://jikaoti.com/ti/7Li0FFFM
0

最新回复(0)