第2套试题答案及详解
【审题分析】首先我们来看看题中要求我们解决的问题有哪些。①按original数组中各元素数字的后3位数的大小进行升序排列,如果数值相等,则按原先的数值进行降序排列;②取出排序后的original数组中的前10个数依次存入result数组中。
【解题思路】根据上面的分析,编写程序有以下几个步骤:
第1步:首先分解出数组中两个元素的后三位,这里采用在两次循环中求出正整数original[i]矛n original[j]对1000的余数的方法;
第2步:然后比较两个数余数的大小,如果正整数0riginal[i]和original[j]对1000的余数不相同,则按照升序进行排序,如果相同,则比较original[i]和original[j]的大小,按照降序进行排序;
第3步:利用一个for循环语句把original数组中的前10个数输出给result数组。
【参考答案】
【易错分析】数组original[i]中两个数的位置交换要借助中间变量data。
【考点链接】for循环语句、正整数的求余运算。
责任编辑:小草