问题 填空题

给定程序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)); }

答案

参考答案:int fun(int n,int xx[][]) 改为 int fun(int n,int xx[][M))

解析:printf("%f,xx[i][j]); 改为 printf("%d,"xx[i][j]); 二维数组作为函数形参时,二维长度不可缺省,只能省略一维的长度。在格式输出函数中,血型数据输出时对应的控制符是%d.

选择题
单项选择题