首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 【说明】 下面的代码运行时,从键盘输入一个四位数(各位数字互不相同,可以有0),取出组成该四位数的每一位数,重组成由这四个数字构成的最大四位数max4和最小四位数min4(有0时为三位数
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 【说明】 下面的代码运行时,从键盘输入一个四位数(各位数字互不相同,可以有0),取出组成该四位数的每一位数,重组成由这四个数字构成的最大四位数max4和最小四位数min4(有0时为三位数
admin
2016-11-11
60
问题
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。
【说明】
下面的代码运行时,从键盘输入一个四位数(各位数字互不相同,可以有0),取出组成该四位数的每一位数,重组成由这四个数字构成的最大四位数max4和最小四位数min4(有0时为三位数),计算max4与min4的差值,得到一个新的四位数。若该数不等于6174,则重复以上过程,直到得到6174为止。
例如,输入1234,则首先由4321-1234,得到3087;然后由8730-378,得到8352;最后由8532-2358,得到6174。
【C代码】
#include
int difference(int a[])
{ int t,i,j,max4,min4;
for(i=0;i<3;i++){/*用简单选择排序法将a[0]~a[3]按照从大到小的顺序排列*/
t=i;
for(j=i+1;___________(1);j++)
if(a[j]>a[t])__________(2);
if(t!=i) {
int temp=a[t]; a[t]=a
; a
=temp;
}
}
max4=___________(3);
min4=___________(4);
return max4-min4;
}
int main()
{ int n,a[4];
printf("input a positive four-digit number:");
Scanf("%d",&n);
while(n!=6174){
a[0]=__________(5); /*取n的千位数字*/
a[1]=n/100%10; /*取n的百位数字*/
a[2]=n/10%10; /*取n的十位数字*/
a[3]=__________(6); /*取n的个位数字*/
n=difference(a);
}
return 0;
}
选项
答案
(1)j<4或等价形式 (2)t=j (3)a[0]*1000+a[1]*100+a[2]*10+a[3]或等价形式 (4)a[3]*1000+a[2]*100+a[1]*10+a[0]或等价形式 (5)n/1000 或等价形式 (6)n%10
解析
本题考查C程序设计基本技能及应用。
题目要求在阅读理解代码说明的前提下完善代码。
由于C程序的执行是从main函数开始的,因此首先理解main函数的代码结构。显然,调用函数difference时实参为数组a,并且从注释中可以确定空(5)的内容为“n/1000”或其等价形式,空(6)处填写“n%10”或其等价形式。这样,数组元素a[0]~a[3]就依次保存了n值从左至右的各位数字。
接下来分析函数difference的代码结构。双重for循环是对数组a进行简单选择排序,目的是将数组中最大数字放入a[0],最小的数字放入a[3]。处理思路是通过比较找出最大数字并用t记下最大数字所在数组元素的下标,第一趟需在a[0]~a[3]中进行选择,通过比较记下最大数字的下标,最后将最大数字交换至a[0],第二趟需在a[1]~a[3]中进行选择,通过比较记下这三个数中最大者的下标,并最大者交换至a[1],依次类推。因此,空(1)处应填入“j<4”或其等价形式,以限定选择范围,空(2)处应填入“t=j”,以记下选择范围内最大者的下标。
根据题目的说明部分,显然空(3)处应填入“a[0]*1000+a[1]*100+a[2]*10+a[3]”、
空(4)处应填入“a[3]*1000+a[2]*100+a[1]*10+a[0]”,或其等价形式。
转载请注明原文地址:https://kaotiyun.com/show/M9jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel2010的A1单元格中输入函数“=IF(1<>2,1,2)”,按回车键后,A1单元格中的值为________________。
LCD显示器的响应时间为(2)时,显示的效果更好。
某企业的大数据工程项目包括如下四个阶段的工作:①数据获取,②数据清洗与整理,③数据分析,④数据展现。一般来说,工作量较大、花费时间较长的阶段是______(1),技术含量最高的阶段是______(2),准备向有关部门递交成果的阶段是______(3)。
张、王、李三个平等的评委独立对三部电影甲、乙、丙进行了评分(三人的满分标准不同),结果如下表:按合理的平均得分计算,第一、二、三名电影应分别授予(69)。
小张为本企业录入一篇领导讲话文稿。文稿中引用了该企业2008年的销售额和各产品的利润等数据。小张考虑到目前是2010年,从信息的实效性出发,决定对文稿中的这部分内容进行处理,则______做法最为恰当。
对同一事物进行多次测量所得的结果可能不一致,这是幽测量误差所致。利用______可使误差基本抵消。
若在Excel工作表中修改某个数据,与该数据有关的图表______。
解决网络安全问题的技术分为主动防御保护技术和被动防御保护技术两大类,__________属于被动防御保护技术。
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。制作交叉双绞线(一端按EIA/TIA568A线序,另一端按EIA/TIA568B线序)时,其中一端的线序如图1-2(a)所示,另一端线序如图1—2
阅读以下说明,回答问题1至问题5。【说明】某一个网络地址块192.168.75.0中有5台主机A、B、C、D和E,它们的IP地址及子网掩码如表2-1所示。
随机试题
A镇政府准备在B村建设工业园区,该村村民王某、李某不同意,拒绝接受A镇政府征地补偿方案。A镇政府决定对他们进行处罚,强行要求他们参加镇政府举办的“学习班”,让王某、李某理解镇政府文件精神。学习期间,不准回家、不准亲友探视、不准与外界通信或电话联系。直到10
法定继承人的范围,是指依法享有继承权的人。依据我国《继承法》第10条的规定,下列人员中,有法定继承权的是()。
某心悸患者查体所见:脉率89次/分,心率113次/分,心律绝对不齐。最可能的诊断是()
支气管肺癌最常见的早期症状是
骨关节结核最容易发生的部位是
我国《刑法》规定不得假释的对象的范围是()
估价上的折旧注重的是(),科学地说不是折旧,而是“减价修正”。
作为市场营销观念的补充和完善,社会营销观念的特点是()。
来自公安机关的资料显示,娱乐圈中有人吸毒,高级知识分子中也有人吸毒,吸毒者中有些人是女性,而抢劫犯中有相当比例的人是吸毒者。由此可见()。
Americansfinditdifficulttoengageinanyactivityforpurepleasure.Wehavetohaveahigheraim—apurpose—foreverymome
最新回复
(
0
)