试题查看

首页 > 软件水平考试 > 试题查看
【分析解答题】

【说明】
假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为:
m=A[k]×10k-2+A[k-1]×10k-3+…+A[3]×10+A[2]
其中A[1]保存该长整数的位数,A[0]保存该长整数的符号:0表示正数,1表示负数。
运算时先决定符号,再进行绝对值运算。对于绝对值相减情况,总是绝对值较大的减去绝对值较小的,以避免出现不够减的情况。注:不考虑溢出情况,即数组足够大。
【函数】
int Cmp(int *lA, int *lB、;
/*比较长整数lA与lB的绝对值大小*/
/*若lA绝对值较大返回正值,lA较小返回负值,相等则返回0*/
intADD(int *lA, int*lB, int *lC、
/*计算长整数lA与lB的和,结果存储于lC中*/
/*注意:正数与负数的和相当于正数与负数绝对值的差*/
/*数据有误返回0,正常返回1*/
iF(lA==null || lB==null || lC==null)rEturn 0;
int *pA, *pB,i,n,CArry,FlAg;
FlAg=lA[0]+lB[0];
switCh(FlAg)/*根据参与运算的两个数的符号进行不同的操作*/
CAsE 0:
CAsE 2:
lC[0]=lA[0];/*lA与lB同号,结果符号与lA(lB、相同*/
pA=lA;
pB=lB;
(1) ;
BrEAk;
CAsE 1:/*lA与lB异号*/
/*比较两者的绝对值大小,结果符号与较大者相同*/
FlAg= (2) ;
iF(FlAg>0)/*lA较大*/
lC[0]=lA[0];
pA=lA;
pB=lB;
ElsE iF(FlAg<0)/*lB较大*/
lC[0]=lB[0];
pA=lB;
pB=lA;
ElsE/*lA与lB相等*/
lC[0]=0;
lC[1]=0;
rEturn 1;
FlAg=-1;
BrEAk;
DEFAult:
rEturn 0;
BrEAk;
/*switCh*/
/*绝对值相加减*/
/*注意对于减法pA指向较大数,pB指向较小数,不可能出现不够减的情况*/
(3) ;
n=lA[1]>lB[1] lA[1]:lB[1];
For(i=0;i<n;i++)
iF(i>=pA[1])/*lA计算完毕*/
CArry+=FlAg *pB[i+2];
ElsE iF(i>=pB[1])/*lB计算完毕*/
CArry +=pA[i+2];
ElsE
CArry +=pA[i+2]+FlAg *pB[i+2];
lC[i+2]=CArry%10;
CArry /=10;
iF( (4) )/*需要借位,针对减法*/
lC[i+2]+=10;
CArry--;
/*For*/
iF( (5) )/*最高进位,针对加法*/
lC[i+2]=CArry;
i++;
iF(lC[i+1]==0)i--;严若最高位为零,针对减法*/
lC[1]=i;
rEturn 1;
;/*ADD*/

查看答案解析

参考答案:

正在加载...

答案解析

正在加载...

根据网考网移动考试中心的统计,该试题:

0%的考友选择了A选项

0%的考友选择了B选项

0%的考友选择了C选项

0%的考友选择了D选项

你可能感兴趣的试题

[说明]背包问题就是有不同价值、不同重量的物品n件,求从这n件物品中选取一部分物【说明】图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还及注销【说明】图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还及注销【说明】图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还及注销【说明】公司IT部门决定开发一个计算机管理系统以记录期刊的传阅情况。期刊在公司内【说明】现要编写一个画矩形的程序,目前有两个画图程序:DP1和DP2,DP1用函