程序定义了NxN的二维数组,并在主函数中自动赋值。 请编写函数:fun(int a[l[N]),函数的功能是:使数组左下三角元素中的值全部置成0。 例如:a数组中的值为 则返回主程序后a数组中的值应为 注意:部分源程序存在文件PROG1.C

admin2017-02-27  1

问题 程序定义了NxN的二维数组,并在主函数中自动赋值。
请编写函数:fun(int a[l[N]),函数的功能是:使数组左下三角元素中的值全部置成0。
    例如:a数组中的值为

则返回主程序后a数组中的值应为

  注意:部分源程序存在文件PROG1.C中。
  请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#include
#define N 5
void fun (int a[] [N])
{
}
NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。  */
  FILE *rf, *wf  ;
  int it  j,a[5] [5]  ;
  rf=  fopen("in.dat","r");
  wf= fopen ("out.dat","w");
  for(i=0 ;  i<5  ;  i++)
  for(j  =0  ;  j  <5  ;  j++)
    fscanf (rf, "%d ", &a [j]);
  fun (a);
  for  (i=  0;  i  <  5;  i++)  {
    for  (j=0;  j<5;  j++) fprintf
(wf,"%4d",a[j]);
    fprintf (wf,"\n");
    }
    fclose (rf);
    fclose (wf);
}
main  ()
{int a[N] [N], i,j;
    printf("*****The array*****\n");
    for  (i  =0;  i    {  for  (j  =0;  j    {a [j]  =rand() %10; printf
("%4d",a[j]);)
          printf ("\n") ;
        }
  fun (a);
   printf  ("THE RESULT\n") ;
  {  for (j =0; j       printf ("\n") ;
}
    NONO () ;
}

选项

答案1 int i, j; 2 for(i—0; i
解析 程序功能是使数组左下半三角元素的值全部置成0。
(1)对二维数组常用双重循环结构来处理:外层循环控制二维数组的行处理,内层循环控制二维数组的列处理。
(2)左下半三角元素的下标特点是列下标小于或等于行下标,即j<=i。
(3)依次访问二维数组,把符合以上条件的元素的值赋0。该题是对矩阵操作的考查。
转载请注明原文地址:https://kaotiyun.com/show/prID777K
0

相关试题推荐
随机试题
最新回复(0)