下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在下画线处应填入的选项是 #include<iostream.h> Void main( ) { int i=0,j,k; do{i++;

admin2013-02-27  31

问题 下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在下画线处应填入的选项是
   #include<iostream.h>
   Void main( )
   {
     int i=0,j,k;
     do{i++;k=316-13 * i;}while(____) ;
     j=k/11;
     cout < < "316=13 * "  < < i < < " +11 *" < < j;
   }

选项 A、k/11
B、k%11
C、k/11=0
D、k%11=0

答案B

解析 do…while语句的一般形式是
   do
   {
   语句
   }while(表达式) ;
   特点是:“直到型”循环结构。先执行一次“语句”,判“表达式”,当“表达式”为非0,再执行“语句”,直到“表达式”的值为0时停止执行语句。在一般情况下,用while和 do…while语句解决同一问题时,若二者的循环体部分是一样的,它们的结果也一样。但当while后面的“表达式”一开始就为“假”时,两种循环的结果不同。这是因为此时while循环的循环不被执行,而do…while循环
的循环体被执行一次。本题的关键是两个加数分别能被13和11整除,在i=0时,直接将316赋值给k,当 k%11的值为0时,则不必执行循环,将执行j=k/11语句,输出结果,所以该表达式合理的条件是k%11。
转载请注明原文地址:https://jikaoti.com/ti/r3L0FFFM
0

最新回复(0)