1、三级信息管理技术机试-104 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.试题要求如图 10.4所示。(分数:100.00)_三级信息管理技术机试-104 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.试题要求如图 10.4所示。(分数:100.00)_正确答案:(void jsSort()int i, j, k, length, half;char temp;for(i=0; i20; i+)length=strlen(xxi);half=length/2;for(j=0; jha
2、lf-1; j+)for(k=j+1; khalf; k+)if(xxijxxik)temp=xxij;xxij=xxik;xxik=temp;If(length%2!=0) half=half+1;for(j=half; jlength-1; j+)for(k=j+1; klength; k+)if(xxijxxik)temp=xxij;xxij=xxik;xxik=temp;)解析:解析 此题的思路是先求出字符串数组中每一行的长度,然后先对前半部分进行降序排列,再对后半部分进行升序排列。注意,题目要求当字符串长度为奇数时,中间的字不参加排序,所以在对后半部分进行排序时要加一个对 length的奇偶判断。当 length为偶数时要从 length/2开始排序,当length为奇数时要从 length/2+1时开始排序。这里是用冒泡排序法进行排序的,用其他的排序方法亦可。