问题 单项选择题

若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是

A.for(i=1,p=1;i<=5;i++) p*=i;

B.for(i=1;i<=5;i++){ p=1; p*=i;}

C.i=1;p=1;while(i<=5){p*=i; i++;}

D.i=1;p=1;do{p*=i; i++; }while(i<=5);

答案

参考答案:B

解析:选项B中for循环了5次,而每次循环的时候,都将p的值重新赋值为1后,再乘以当前数字i,最后的结果为5,显然不是5!的值,同样的分析可知选项A、选项C和选项D计算的都是5!。

单项选择题
单项选择题