首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和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
24
问题
阅读以下说明和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://jikaoti.com/ti/7Ui7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(callbyvalue)方式,第二个参数采用传引用(callbyreference)方式,main()执行后输出的值为_______。
某个不确定有限自动机(s0为初态,s3为终态)如下图所示,_______是该自动机可识别的字符串(即从初态到终态的路径中,所有边上标记的字符构成的序列)。
通常VLAN有静态和动态2种实现方式,这2种方式分别是如何实现的?各有什么特点?Switch1采用的是哪种实现方式?填充VLAN信息表如表9-3所示,将答案填写在答题纸相应位置。
在应用服务器关机的情况下,公司员工能连接上因特网吗?简要解释。假设采用ISDN基本速率接口,下载1875KB的文件,最快需要多长时间?
目前,通过移动电话接人互联网采用的主要技术是什么?公司网络中的设备或系统(包括存储商业机密的数据库服务器、邮件服务器、存储资源代码的PC机、应用网关、存储私人信息的PC机、电子商务系统)哪些应放在DMZ中,哪些应放在内网中?给予简要说明。
造成故障1的原因是什么?如何解决?1.将故障2中(1)和(2)两处合适的答案填入答题纸相应的解答栏内。2.故障2如何解决?
双绞线可以制作成直连线和交叉线两种形式。在上图中,两个交换机的UPLINK口相连,使用的双绞线制作成什么形式?连接交换机和计算机的双绞线制作成什么形式?阅读下面的配置信息,解释(7)处的命令。Switch#configtSwitch(
请认真阅读下列有关计算机网络防火墙的说明信息,回答问题1~5。[说明]某单位的内部局域网通过防火墙与外部网络的连接方式及相关的网络参数如下图所示。
根据图3-1所给出的网络连接方式及相关的网络参数,区域(A)与区域(B)中计算机的网络参数配置(如图3-2所示)为:区域(A)计算机“IP地址”(范围):(1):区域(A)计算机“子网掩码”;(2);区域(A)计算机“默认网关”:(
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。为上
随机试题
下列古都建筑遗存位于西安的是()。
调配麻醉中药的处方应留存
患者,女,59岁。近月常感心悸心慌,自扪脉搏有间歇,坐卧不安,动则加剧,时有突然昏倒,汗出倦怠,面色苍白,四末欠温,舌淡苔白,脉象虚弱。其中医治法是
A.一度房室传导阻滞B.二度Ⅰ型房室传导阻滞C.二度Ⅱ型房室传导阻滞D.三度房室传导阻滞E.右束支传导阻滞听诊第一心音由强变弱见于
结算方式说法有误的项是()。
人身意外伤害保险通常被称为( ),这是由于其保险期限一般不超过1年。
感冒时吃东西没有滋味,主要是因为()。
【B1】【B14】
下面程序的功能是建立一个有3个结点的单循环链表,然后求各个结点数值域data中数据的和,请填空。#include<stdio.h>#include<stdlib.h>struc
WhileApplewascomingunderincreasingpressurefromlowercostPCclones,thecompany’sinitialresponsewastodevelopevenm
最新回复
(
0
)