首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明、图和C代码,回答问题 [说明] 假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为: m=a[k]×10k-2+a[k-1]×10k-3+…+a[3]×10+a[2] 其中a[1
阅读下列函数说明、图和C代码,回答问题 [说明] 假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为: m=a[k]×10k-2+a[k-1]×10k-3+…+a[3]×10+a[2] 其中a[1
admin
2012-02-20
59
问题
阅读下列函数说明、图和C代码,回答问题
[说明]
假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数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*/
int ADD (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*/
选项
答案
flag=1 cmp(LA,LB) carry=0 LC[i+2]<0 carry
解析
转载请注明原文地址:https://jikaoti.com/ti/13i7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
GB17859-1999《计算机信息系统安全保护等级划分准则》中将计算机安全保护划分为(53)个级别。
在一个完整的功能测试过程中,______不属于应该编写的测试文档。A.测试需求文档B.测试用例文档C.测试标准D.问题报告单
一个软件开发过程描述了“谁做”、“做什么”、“怎么做”和“什么时候做”,RUP用(16)表述“谁做”。
测试成本控制的目标是使测试开发成本、测试实施成本和测试维护成本最小化,以下理解正确的是______。A.测试准备成本属于测试实施成本B.可以通过加强软件测试的配置管理来降低测试维护成本C.测试设计成本控制的目标是尽可能地减少测试总执行时间和所需的测试
某开发小组欲开发一个大型软件系统,需求变化较小,此时最不适宜采用()过程模型。
对于逻辑表达式((a||b)||(c&&d)),需要()个测试用例才能完成条件组合覆盖。
计算机系统中,虚拟存储体系由______两级存储器构成。
函数t()、f()的定义如下所示。若调用函数t()时传递给x的值为3,并且调用函数f()时,第一个参数采用传值(call by value)方式,第二个参数采用传引用(call by reference)方式,则函数t0的返回值为(33).
下图是①设计模式的类图,该设计模式的目的是②,图中,Abstraction和RefinedAbstraction之间是③关系,Abstraction和Implementor之间是④关系。③处应填入?
对于逻辑表达式(bufc[i]>223&&bufc[i]<240&&i+2<totalbytes),需要______个测试用例才能完成条件组合覆盖。
随机试题
下列哪种药物不能清除自由基
WhatareHenryCountyresidentsaskedtodo?
A.正气不足.邪毒流窜B.肝气郁结.痰湿凝结C.火毒炽盛.正气不虚D.火毒炽盛.正气内虚E.先天不足.肾亏骼空流注的病理
罗厚森是一家著名大型物流公司的职员,年纪不大的他已经在事业上小有成就,是同学、朋友圈中令人羡慕的“先富阶层”。但是为了以后的生活理想,特想作一理财规划,经过初步沟通面谈后,你获得了以下家庭、职业与财务信息:一、案例成员二、月度收支状况收入方面:1
下列有关存货监盘的说法,不正确的是()。
某单位举办围棋联赛,所有参赛选手的排名都没有出现并列名次。小周发现除自己以外,其他所有人的排名数字之和正好是70。问小周排名第几?()
某中药制剂中,人参或者党参至少必须有一种,同时还需满足以下条件:(1)如果有党参,就必须有白术。(2)白术、人参至多只能有一种。(3)若有人参,就必须有首乌。(4)有首乌,就必须有白术。如果以上为真,该药制剂中一定
Lookattheformbelow.Youwillhearawomanmakingareservationforanawardsceremony.TheMarketingWee
Becauseofarecentobstacleinproduction,saleshavedroppedandaccordinglyprofitshave_____.
Lookingaroundthesmallvillage,hefeltasthoughhe______fromanevildream.
最新回复
(
0
)