问题
填空题
下面程序的功能是将字符串a下标值为偶数的元素由小到大排序,其他元素不变,请填空。
#include<stdio.h>
main()
char a[]="labchmfye",t;
int i,j;
for(i=0;i<7;i+=2)
for(j=i+2;j<9; 【15】 )
if( 【16】 )
t=a[i]; a[i]=a[j]; a[j]=t;j++;
puts(a);
printf("\n");
答案
参考答案:[15] j++ [16] a[i]>a[j]或a[j]<a[i]
解析: 题目要求排序的元素是下标值为偶数的元素,外循环循环4次,i的值分别为0、2、4、6,所以内循环也循环4次,i的值就应为2、4、6、8,在循环体中已经有了对j加1的操作,因此for后括号中的语句应再对j加1,保证下标为偶数。if语句的功能是如果后一个数比前一个数小则交换位置。