使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:将a所指4×3矩阵中第k行的元素与第0行元素交换。 例如,有下列矩阵: 1 2 3 4 5 6 7

admin2018-08-11  18

问题 使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数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中。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N3
#define M4
/*********found*********/
void fun(int(*a)[N],int【1】)
{int i,temp;
/*********found*********/
for(i=0;i<【2】;i++)
{temp=a[0]
/*********found*********/
a[0]=【3】
a[k]=temp;
}
}
main()
{int x[M][N]={{1,2,3},{4,5,
6),{7,8,9},{10,11,12}},i,j;
printf("The array before moving:\n\n");
for(i=0;i<M;i++)
{for(j=0;j<N;j++)
printf("%3d",x[j]);
printf("\n\n");
}
fun(x,2);
printf("The array after moving:\n\n");
for(i=0;i<M;i++)
{for(j=0;j<N;j++)
printf("%3d",x[j]);
printf("\n\n");
}
}

选项

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

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

最新回复(0)