首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和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
25
问题
阅读以下说明和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://kaotiyun.com/show/ZaDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
以下对软件测试对象的叙述中,正确的是_______。
在C程序中,设有“inta=3,b=2,c=1;”,则表达式a>b>c的值是_________。
若系统中有4个互斥资源R,当系统中有2个进程竞争R,且每个进程都需要i个R(i≤3)时,该系统可能会发生死锁的最小i值是________。
在应用服务器关机的情况下,公司员工能连接上因特网吗?简要解释。在路由器和ISDN之间需要加入终端适配器(TA)吗?试说明在什么情况下需要加入TA。
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?若交换机Switch1和SwiWh2没有千兆端口,在上图10中能否实现VLANTrunk的功能?若能,如何实现?
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?在交换机中配置VLAN时,VLANl是否需要通过命令创建?为什么?
IPSec是IETF以RFC形式公布的一组安全协议集,它包含了AH与ESP两个安全机制,其中(1)不支持保密服务。如果按上图中所示网络结构配置IPSecVPN,安全机制选择的是ESP,那么IPSec工作在隧道模式。一般情况下,在图中所标注的四个网络接
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
阅读以下有关传统局域网络运行和维护的叙述,将应填入(n)处的字句写在对应栏内。在对网络运行及维护前首先要了解网络,包括识别网络对象的硬件情况、判别局域网的拓扑结构和信道访问方式、确定网络互联以及用户负载等。常见的3种拓扑结构是星形、(1)与(2)拓
随机试题
在整流电路中,把两只或几只整流二极管串联使用时,为了避免反向电压使二极管相继击穿,通常在每只二极管上串联一只阻值相等的均压电阻。()
下列关于肾动脉瘤超声表现的表述,错误的是
哪项不是高危型急淋白血病的危险因素
甲、乙两公司因一起合同纠纷在A市仲裁委员会进行仲裁。仲裁裁决作出后,乙方认为裁决事项超出仲裁协议约定的范围,所以向人民法院提出撤销裁决的申请,人民法院应当如何处理?()
( )是基金管理公司的核心业务。
设某股票报价为30元,该股票在2年内不发放任何股利。若2年期期货报价为35元,则可通过期货交易套利获得盈利()元。
下列说法中,正确的有()。
我们读书,总是从一本书的最高境界来欣赏和品评;我们使用绳子,总是从最薄弱的一段来断定绳子的质量。坐冷板凳的书呆子,不妨以读书之法待人,政治家或企业家则应该以衡量绳子的方法来规避用人过程中的风险。这段话最主要想表达的意思是()。
Psychologistshaveknownforacenturythatindividualsvaryintheircognitiveability.Butaresomegroups,likesomepeople,
下列关于标签的描述中,错误的是
最新回复
(
0
)