i=6?j=5
i=5?j=5
i=6?j=4
i=5?j=6
第1题:
给定下面的代码: int i=1,j=10; do { if(i++>--j) continue; }while(i<5) 执行完之后,i与j的值分别是多少? ( )
A.i=6,j=5
B.i=5,j=5
C.i=6,j=4
D.i=5,j=6
第2题:
执行下列语句,变量sum的值是______。
int sum=0;
for(inti=1;i<=3;i++)
for(intj=1;j<=i;j++) sum++;
第3题:
●试题四
阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
函数QuickSort是在一维数组A[n]上进行快速排序的递归算法。
【函数】
void QuickSort(int A[],int s,int t)
{int i=s,j=t+1,temp;
int x=A[s];
do{
do i++;while (1) ;
do j--;while(A[j]>x);
if(i<j){temp=A[i]; (2) ; (3) ;}
}while(i<j);
A[a]=A[j];A[j]=x;
if(s<i-1) (4) ;
if(j+1<t) (5) ;
}
●试题四
【答案】(1)A[i]<x(2)A[i]=A[j](3)A[j]=temp(4)QuickSort(A,s,j-1)
(5)QuickSort(A,j+1,t);
【解析】快速排序的思想是:任取待排序序列中的某个元素作为基准(一般取第一个元素),通过一趟排序,将待排元素分为左右两个子序列,左子序列元素的排序码均小于或等于基准元素的排序码,右子序列的排序码则大于基准元素的排序码,然后分别对两个子序列继续进行排序,直至整个序列有序。快速排序是对冒泡排序的一种改进方法,算法中元素的比较和交换是从两端向中间进行的,排序码较大的元素一次就能够交换到后面单元,排序码较小的记录一次就能够交换到前面单元,记录每次移动的距离较远,因而总的比较和移动次数较少。
第4题:
A.i=6andj=5
B.i=5andj=5
C.i=6andj=4
D.i=5andj=6
E.i=6andj=6
第5题:
A.1
B.2
C.3
D.4
E.5
第6题:
在执行完此程序段后,i,j值为 int i=1,j=10; do{ if(++i>j--)continue; }while(i<5);
A.i=6 and j=5
B.i=5 and j=5
C.i=6 and j=4
D.i=5 and j=6
第7题:
执行下面的程序段后i和j的结果为 int i=1,j=10; do { if(i++>--j)continue; } while(i<5);
A.i=6,j=5
B.i=5,j=5
C.i=6,j=4
D.i=5,j=6
第8题:
publicclasstest3{publicstaticvoidmain(Stringargs[]){for(inti=0;i<3;i++){for(intj=3;j>=0;j--){if(i==j)continue;System.out.println("i="+i+"j="+j);}}}}上面的Java代码编译运行后,下列选项中,()会出现在输出结果中。
A.i=0j=3
B.i=0j=0
C.i=2j=2
D.i=0j=2
E.i=1j=2
第9题:
A.i=6andj=5
B.i=5andj=5
C.i=6andj=4
D.i=5andj=6
E.i=6andj=6
第10题:
A.1
B.2
C.3
D.4
E.5