Java程序设计

单选题下列代码段inti=1,j=10;do{???if(i++>--j)continue;}while(i<5);执行完毕后,i和j的值分别是()。A i=6?j=5B i=5?j=5C i=6?j=4D i=5?j=6

题目
单选题
下列代码段inti=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

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第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


正确答案:D
解析:该题考查对自增自减运算符的理解。假如op是操作数,自增自减运算符有下面几种形式。++op、op++,表示对操作数op加1,其中,++op表示先对op加1然后再取其值,而。op++表示先取其值,然后再对op进行加1。 --op、op--,表示对操作数op进行减1操作,其中,--op表示先对op减1然后再取其值,而op--表示先取其值,然后再对op进行减1。在本题中,当进行到i=5时退出循环,此时j为6。故本题答案是D。

第2题:

执行下列语句,变量sum的值是______。

int sum=0;

for(inti=1;i<=3;i++)

for(intj=1;j<=i;j++) sum++;


正确答案:6
6

第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)Ai<x(2)Ai=Aj(3)Aj=temp(4)QuickSort(Asj-1)

(5)QuickSort(Aj+1t)

【解析】快速排序的思想是:任取待排序序列中的某个元素作为基准(一般取第一个元素),通过一趟排序,将待排元素分为左右两个子序列,左子序列元素的排序码均小于或等于基准元素的排序码,右子序列的排序码则大于基准元素的排序码,然后分别对两个子序列继续进行排序,直至整个序列有序。快速排序是对冒泡排序的一种改进方法,算法中元素的比较和交换是从两端向中间进行的,排序码较大的元素一次就能够交换到后面单元,排序码较小的记录一次就能够交换到前面单元,记录每次移动的距离较远,因而总的比较和移动次数较少。

 

第4题:

inti=1,j=10;do{if(i>j){continue;}j--;}while(++i<6);System.out.println(i=+i+”andj=+j);Whatistheresult?()

A.i=6andj=5

B.i=5andj=5

C.i=6andj=4

D.i=5andj=6

E.i=6andj=6


参考答案:A

第5题:

publicclassFoo{publicstaticvoidmain(String[]args){inti=1;intj=i++;if((i>++j)&&(i++==j)){i+=j;}}}Whatisthefinalvalueofi?()

A.1

B.2

C.3

D.4

E.5


参考答案:B

第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


正确答案:D
解析:本题考查考生对自增自减运算符的理解。++op和op++,表示对操作数op加1,其中++op表示先对op加1然后再取值,而op++表示先取值,然后再对op进行加1。--op和op--也是一样。当进行到i=5时退出循环,此时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


正确答案:D
解析:本题考查考生对自增自减运算符的理解。++op和op++,表示对操作数op加1,其中++op表示先对op加1然后再取值,而op++表示先取值,然后再对op进行加1。-op和op--也是一样,当进行到i=5时退出循环,此时j为6。因此,本题正确答案为选项D。

第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


参考答案:A, D, E

第9题:

inti=1,j=10;do(if(i++>--j)continue;)while(i<5);Afterexecution,whatarethevaluesforIandj?()

A.i=6andj=5

B.i=5andj=5

C.i=6andj=4

D.i=5andj=6

E.i=6andj=6


参考答案:D

第10题:

publicclassFoo{publicstaticvoidmain(Stringargs){inti=1;intj=i++;if((i>++j)&&(i++==j)){i+=j;}}}Whatisthefinalvalueofi?()

A.1

B.2

C.3

D.4

E.5


参考答案:B

更多相关问题