首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:输出M×M整数方阵,然后求两条对角线上元素之和,并作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #i
下列给定程序中,函数fun的功能是:输出M×M整数方阵,然后求两条对角线上元素之和,并作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #i
admin
2017-09-23
26
问题
下列给定程序中,函数fun的功能是:输出M×M整数方阵,然后求两条对角线上元素之和,并作为函数值返回。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdlib.h >
#include < conio.h >
#include < stdio.h >
#define M 5
/*********found*********/
int fun(int n,int xx[][])
{
int i,j,sum=0;
printf("\nThe%d x%d ma
trix:\n",M,M);
for(i=0;i < M;i++)
{
for(j=0;j < M; j++)
/*********found*********/
printf("%f",XX
[j]);
printf("\n");
}
for(i=0 ; i < n;i++)
sum+=xx
+xx
[n—i—1];
return(SLIm);
}
void 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}};
system("CLS”);
printf("\nThe SLIm of all
elements on 2 diagnals is%d",
fun(M,aa));
}
选项
答案
(1)int fun(int n,int xx[][M]) (2)printf("%d",xx[i][j]);
解析
本题考查:函数定义形式;printf格式输出函数,注意其函数形式。
(1)当用数组作为函数的形参时,可以不定义数组的行数,但一定要定义数组的列数。
(2)该处错误比较隐蔽,一般C语言上机考试很少涉及printf函数中的错误,此处只要明白“d”和“f”的区别就可以了。格式字符d表示以带符号的十进制形式输出整数(正整数不输出符号);格式字符f表示以小数形式输出单精度、双精度数据,隐含输出6位小数。
printf函数,其一般形式为:printf(“格式控制字符串”,输出表列),其中格式控制字符串用于指定输出格式。格式控制字符串是以%开头的字符串,在%后面跟有各种格式字符,以说明输出数据的类型、形式、长度、小数位数等。
例如:
“%d”表示按十进制整型输出;
“%ld”表示按十进制长整型输出;
“%f”表示以小数形式输出;
“%c”表示按字符型输出等。
非格式字符串在输出时原样输出,在显示中起提示作用。
转载请注明原文地址:https://kaotiyun.com/show/Rsxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>intfun(intx,inty){if(x==y)return(x);elsereturn((x+y)/2);}main(){inta=1,b
已知:intc[3][4];,则对数组元素引用正确的是()。
下面程序运行后的输出结果是()。#include<stdio.h>main(){inta[5]={1,0,4,2,0},b[5]={1,2,3,4,5},i,s=0;for(i=0;i<5;i++)s=s+b[a[
下面程序的运行结果是()。y=5;x=14;y=((x=3*y,x+6),x-1);printf("x=%d,y=%d”,x,y);
下面程序的运行结果是()。#definePOW(r)r*rmain(){intx=2,y=3,t;t=POW(x+y);printf("%d\n",t);}
下面程序中的数组a包括10个整数元素,从a中第二个元素起,分别将后项减前项之差存入数组b,并按每行4个元素输出数组b,请填空。main(){inta[10],b[10],i;for(i=0;i<10;i++)scanf("%d",
下面程序将二维数组a的行和列元素互换后存放到另一个二维数组b中,请填空。main(){inta[2][3]={{1,2,3},{4,5}},b[3][2],i,j;for(i=0;i<2;i++){for(j=0;j<3;j++)
以下程序统计从终端输入的字符中大写字母的个数。用#号作为输入结束标志,请填空。#include<stdio.h>#include<ctype.h>main(){intnum[26],i;charc;for(i=0;i<26
若有以下定义,则对a数组元素的正确引用是()。inta[5],*p=a;
以下程序的功能是:将输入的正整数按逆序输出。例如:若输入135,则输出531,请填空。#include<stdio.h>main(){intn,s;printf("Enteranumber:");scanf("%d",&n)
随机试题
求曲面z=xy上点(1,2,2)处的法线方程
2007年3月,某建设单位与甲施工单位签订《施工合同》,约定由甲承建办公楼。接着甲又与乙施工单位签订一份《劳务分包合同》,约定由乙承包该办公楼的建设任务并承担所有责任。则下列说法错误的是()。
填列存货项目的期末余额,所涉及的科目有()。
基金管理人是基金一切活动的中心。()
某银行2008年3月25日向厂发放临时贷款10万元,贷款期限为3个月:假设利率为9‰,该厂于2008年6月25日银行按期还贷,应计收利息为()。
()是指在整个借款期间,不随借贷资金的供求状况而变化的利率。
Whichofthefollowingdoesnotbelongtothepost-listeningactivities?
控制器的功能为()。
TreesforDemocracyIamWangariMaathai.WhenIwasgrowingupinNyeriincentralKenya,therewasnowordfordesertinm
PartⅡReadingComprehension(SkimmingandScanning)Directions:Inthispart,youwillhave15minutestogooverthepassageq
最新回复
(
0
)