给定程序MODllC中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上各元素之和,返回此和数。inClude<coMo.h>inClude<stdio.h>dehne M 5/************fOUnd************/int fun(int n,int xx[][]){int i,j,sum=0;printf("\n The%dx%d matrix:\n"M,M);for(i=0;i<M;i++){ for(j=0;j<M;j++)/************found****

题目

给定程序MODllC中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上各元素之和,返回此和数。

inClude<coMo.h>

inClude<stdio.h>

dehne M 5

/************fOUnd************/

int fun(int n,int xx[][])

{int i,j,sum=0;

printf("\n The%dx%d matrix:\n"M,M);

for(i=0;i<M;i++)

{ for(j=0;j<M;j++)

/************found************/

printf("%f",xx[i][j]);

printf("\n");

}

for(i=0;i<n;i++)

sum+=xx[i][i]+XX[i][[n-i-1];

return(sum);

}

main( )

{int aa[M][M]={{1,2,3,4,5),{4,3,2,1,0),

{6,7,8,9,0},{9,8,7,6,5},{3,4,5,6,7}};

clrscr( );

printf("\n The sum Of all elements On 2 diagnals is %d."fun(M,aa));

}


相似考题
更多“给定程序MODllC中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上各元素之和,返回此和数 ”相关问题
  • 第1题:

    下列给定程序中,函数fun()的功能是:输出M行N列整数方阵,然后求两条对角线上的各元素之和,返回此和数。

    请改正程序中的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.

    试题程序:

    include <conio.h>

    include <stdio.h>

    define M 5

    /**********************************/

    iht fun(int n, int xx[ ][ ])

    { int i, j, sum=0;

    printf("\nThe %d x %d matrix:\n",M,M);

    for(i=0;i<M;i++)

    { for (j=0; j<M; j++)

    /**********************************/

    printf("%4f",xx[i][j]);

    printf("\n");

    }

    for(i=0;i<n;i++)

    sum+=xx[i][i]+xx[i][n-i-1];

    return(sum);

    }

    main ()

    { int aa[M][M]={{1,2,3,4,5},{4,3,2,1,0},

    {6,7,8,9,0},{9,8,7,6,5},{3,4,5,6,7}};

    clrscr();

    printf("\nThe sum of all elements on 2

    diagnals is %d",fun(M, aa));

    }


    正确答案:(1)错误: int fun(iht nintxx[][]) 正确: int ltm(iht mint r.x[][M]) (2)错误: printf("%4ff'xx[i]fj]); 正确: printf("%4d"xx[i][j]);
    (1)错误: int fun(iht n,intxx[][]) 正确: int ltm(iht mint r.x[][M]) (2)错误: printf("%4f,f',xx[i]fj]); 正确: printf("%4d",xx[i][j]); 解析:该题错误比较隐蔽,一般的C语言上机考试很少涉及printf顺数中的错误,在这里,我们只要明白“d”和“f”的区别就OK了。格式字符d表示:以带符号的十进制形式输出整数(正整数不输出符号);格式字符f表示;以小数形式输出单、双精度,隐含输出6位小数。

  • 第2题:

    下列给定程序中,函数proc()的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main()函数中,若proc()返回1,则输出″YES″;若proc()返回0,则输出″NO″!

    请修改程序中的错误,使它能得出正确的结果。

    注意:不要改动main)函数,不得增行或删行,也不得,t更改程序的结构。

    试题程序:


    正确答案:

    (1)错误:k++
    正确:k++;
    (2)错误:if(m=k)
    正确:if(m==k)
    【解析】根据C语言的语法规则,每一条语句都要以分号结束,因此,要在语句“k++”之后加上分号。判断变量m与变量k是否相等应该用符号“==”,符号“=”为赋值符号,因此,“if(m=k)”应改为“if(m==k)”。

  • 第3题:

    编写一个函数fun(),首先从键盘上输入一个4行4列的一个实数矩阵到一个二维数组a[4][4]中,接着求出主对角线上元素之和,最后返回求和结果。

  • 第4题:

    给定程序MODll.C中函数fun的功能是:根据形参m的值(2≤m≤9),在m行m列的二维数组中存放如下所示规律的数据,由main函数输出。

    例如,若输入2 |若输入4

    则输出: |则输出:

    1 2 |1 2 3 4

    2 4 |2 4 6 8

    |3 6 9 12

    |4 8 12 16

    请改正程序函数中的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!


    正确答案:(1)void fun(int a[][M] int m)(2)a[j][k]=(k+1)*(j+1);
    (1)void fun(int a[][M], int m)(2)a[j][k]=(k+1)*(j+1); 解析:本题中函数的功能是根据形参m的值(2≤m≤9),在m行m列的二维数组中存放有规律的数据,规律就是,i和j代表二维数组的行和列,则a啪[k]=(k+1)*(j+1)。

  • 第5题:

    下列给定程序中,函数proc()的功能是:先从键盘上输入一个3行3列的矩阵的各个元素的值,然后输出主对角线元素之积。 请修改函数proc()中的错误,使它能得出正确的结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序:


    正确答案:
    (1)错误:for(i=0;j<3;j++)