首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 函数combine(a,b,c)是计算两个整数的组合数。由于计算结果可能超出long整型的可表示范围,故采用数组方式存储,例如:k位长整数m用数组c口存储结构如下: m=c[k]
阅读以下说明和C代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 函数combine(a,b,c)是计算两个整数的组合数。由于计算结果可能超出long整型的可表示范围,故采用数组方式存储,例如:k位长整数m用数组c口存储结构如下: m=c[k]
admin
2014-10-11
42
问题
阅读以下说明和C代码,将应填入(n)处的字句写在答题纸对应栏内。
【说明】
函数combine(a,b,c)是计算两个整数的组合数。由于计算结果可能超出long整型的可表示范围,故采用数组方式存储,例如:k位长整数m用数组c口存储结构如下: m=c[k]×10
k-1
+c[k一1]×10
k-2
+…+c[2]×10+c[1],利用c[0]存储长整数m的位数,即c[0]=k。数组的每个元素只存储长整数m的一位数字,长整数运算时,产生的中间结果的某位数字可能会大于9,这是就应该调用fonnat将其归整,使数组中的每个元素始终只存储长整型的一位数字。整数a和b(a≥b)的组合数为:
其中u
1
=a,u
2
=a—1,…,u
b
=a—b+1,d
1
=1,d
2
=2,…,d
b
=b。为了计算上述分式,先从u
1
,u
2
,…,u
b
中去掉d
1
×d
2
×…×d
b
的因子,得到新的u
1
,u
2
,…,u
b
,然后再将它们相乘。
【函数】
#define MAXN 100
int gcd(int a,int b)//求两个整数a和b的最大公因子
{
if(a
int c=a; a=b; b=c;
}
for(int i=b; i>=2; i一一){
if( (1) )return i;
}
return 1:
}
void format(int*a)//将长整型数组归整
{
int i;
for(i=1; i
>=1 0; i++){
i f(i >=a[0]) (2) ;
a[i+1] +=a
/10;
a
=a
%10;
}
if(i>a[0]) (3);
}
void combine(inta, intb, int*c)
{
int i, j, k, x;
int d[MAXN], u[MAXN];
k=0:
for(i=a; i>=a—b+1; i一一)u[++k] = i;
u[0] =b;
for(i=1; i<=b; i++)d
=i;
for(i=1;i<=u[O]j i++){//从u中各元素去掉d中整数的因子
for(j=1; j<=b; j++)(
x:gcd(u
,d[j]);//计算最大公约数
u
/=x;
d[j] /=x;
}
}
(4);c[1]=1;//长整数c初始化
for(i=1;i<=u[0];i++){//将u中各整数相乘,存于长整数c中
if(u
!:1){
for(j=1; j <=c[0]; j++){
c[j]= (5) ;
}
format(c);//将长整数c归整
}
}
}
选项
答案
(1)a%i==0&&b%i==0(2)a[i+1]=0(3)a[0]=i (4)c[0]=1(5)u[i]*c[j]
解析
函数gcd()是用来求最大公约数的,从“if(a
=a[0]”的情况下执行的,而for循环条件是“i
>=10”,则必然意味着“a
>=10”,需要进位调整,而接下来的语句“a[i+1]+=a[i1/10”暗示此时a[i+1]需要赋初值0。故空(2)应填“a[i+1]=0”。执行到空(3)调整已经结束,若if条件“i>a[0]”成立意味着整数归整后,位数已经突破了原来的a[0],需要调整为当前的位数。故空(3)应填“a[0]=i”。空(4)是初始化长整数c的,接下来的是乘法操作,因此初始化为1,即c[1]=1,显然应该将c[0]也初始化为1。故空(4)应填“c[0]=1”。从注释知空(5)所在的二重循环是将u中的各整数相乘存入c中,需要将c的每一位与u的每一位相乘,故空(5)应填“u
*c[j]”。
转载请注明原文地址:https://www.kaotiyun.com/show/ZaDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
以下对软件测试对象的叙述中,正确的是_______。
己知某文档仅包含6种不同的字符,其每个字符出现的频率如下表所示,采用霍夫曼编码对该文档压缩存储,则单词“face”的编码为_______,该文档的压缩比为25%。
数据库是按照一定的数据模型组织、存储和应用的______的集合。
在C程序中,设有“inta=3,b=2,c=1;”,则表达式a>b>c的值是_________。
若系统中有4个互斥资源R,当系统中有2个进程竞争R,且每个进程都需要i个R(i≤3)时,该系统可能会发生死锁的最小i值是________。
[Java源程序:一个简单的Web服务器]/************************************************************//*WebServer.java*//******
阅读以下说明,回答问题1~7。[说明]下图是在网络中划分VLAN的连接示意图。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在支持VLAN的交换机端口上,并属于某个VLA
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持根据上述inittab文件的内容,系统在引导过程结束前,至少还要执行______进程。A.rc.sy
阅读以下关于Linux网关安装和配置过程的说明,回答问题1至问题5。【说明】当局域网中存在大量计算机时,根据业务的不同,可以将网络分成几个相对独立的子网。图12-2是某公司子网划分的示意图,整个网络被均分为销售部和技术部两个子网,子网之间通过一台
具有综合业务传输能力的HFC网络由视频前端(FE)、主数字终端(HDT)、光纤节点(FN)、网络接口单元(NIU)、综合业务单元(ISU)及传输线路等构成。根据HFC网接入Internet的典型配置,将图8-11所示的拓扑图中(1)~(5)空缺处名称填写
随机试题
“烟”与“央”:“央”的主要元音a的实际读音为()。
产生促红细胞生成素的主要部位是
下列说法正确的是:()
业主大会作出选聘、解聘物业管理企业的决定,必须经()通过。
均匀地基中地下水位埋深为1.40m,不考虑地基中的毛细效应,地下水位上土重度为15.8kN/m3,地下水位以下土体的饱和重度为19.8kN/m3,则地面下3.6m处的竖向有效应力为:
法国A公司是国际知名的电气跨国公司,十年前通过设立中国分公司进入中国市场。针对中国成为世界加工厂和世界经济的有力推动者之一的趋势不断加强,A公司开始着手研究在中国的发展战略。经过十年充分的战略情报研究和战略保障准备,从2005年开始在中国实施并购。
随着“二孩”政策全面放开,使得托儿所、幼儿园的人数不断增加,学前教育资源相对不足,假如你是教育部的工作人员,要针对此情况做一个调研报告。请问你会如何开展?
《乌托邦》
国家司法机关及其公职人员依照法定职权和程序适用法律处理案件的专门活动叫作
在PowerPoint演示文稿中,不可以使用的对象是:
最新回复
(
0
)