首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和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
27
问题
阅读以下说明和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程序中,对于如下的两个for语句,其运行后a和b的值分别为________。for(inta=0;a=0,a++);for(intb=0;b=0;++b);
阅读以下说明,回答问题1至问题6。说明ADSL是接入Internet的一种宽带技术。图2-1为一台带网卡的PC机采用ADSL接入Internet的网络结构图。
阅读以下说明,回答问题1~7。[说明]下图是在网络中划分VLAN的连接示意图。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在支持VLAN的交换机端口上,并属于某个VLA
SSL协议使用(1)密钥体制进行密钥协商。在IIS5.0中,Web服务器管理员必须首先安装Web站点数字证书,然后Web服务器才能支持SSL会话,数字证书的格式遵循ITU-T(2)标准。通常情况下,数字证书需要由(3)颁发。如果Web服务器管理员希望W
阅读下面的说明。[说明]下图是某公司利用Internet建立的VPN。
根据图3-1所给出的网络连接方式及相关的网络参数,区域(A)与区域(B)中计算机的网络参数配置(如图3-2所示)为:区域(A)计算机“IP地址”(范围):(1):区域(A)计算机“子网掩码”;(2);区域(A)计算机“默认网关”:(
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
对一个大型校园网工程进行网络备份系统设计时,应考虑解决哪些主要的问题?请用150字以内的文字简要说明。备份就是对数据文件的备份,备份网络文件就是将所需要的文刊:复制到光盘、磁带或磁盘等存储介质上。这种备份网络文件的思路是否正确?请用200字以内的文字简
随机试题
含铁卟啉的化合物有
被动免疫接种后,距离献血需要间隔的时间是
A、苯胺-邻苯二甲酸盐试剂B、三苯四氮唑盐试剂C、硝酸银试剂D、3,5-二羟基甲苯-盐酸试剂E、过碘酸加联苯胺使酮糖和含有酮糖的低聚糖呈红色
服用以下药物时,为预防不良反应,应常规测量心率的是
甲向乙借款,将自己所有的皇冠车出质于乙,乙又将该车出租于丙,丙因违章驾驶造成该车灭失,为此引起纠纷。下列表述正确的是()。
已知先张法部分预应力混凝土简支空心板梁的跨中截面尺寸如下图所示。计算跨径L0=12.60m。空心板采用40号混凝土,弹性模量Eh=3.3×104N/mm2,预应力钢筋选用,其截面面积Av=1256mm2。已求得预应力钢筋重心处的压应力为零时,预应力钢筋的预
关于财务报表审计,下列说法中正确的有()。
甲男将乙女绑架,意图带到外地卖掉。在去外地的途中,甲对乙产生好感,爱护有加。二人到海南旅游半个多月后,各自回家。甲的行为属于
下列符号常量的声明中,()是不合法的。
TheSacrificeatMasada[A]Onediscoveryalwaysleadstoanother.ArchaeologistsworkingneartheDeadSeabecamecuriousabout
最新回复
(
0
)