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

admin2010-03-29  24

问题 下面程序的功能是把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

答案2

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

最新回复(0)