首页上一页 1  下一页尾页 2 条记录 1/1页
         悬赏:2 学分                        
                    		
                            《C语言从入门到精通(第3版)》第7章  循环控制
悬赏:2 学分                        
                    		
                            《C语言从入门到精通(第3版)》第7章  循环控制                                                	
                        
                        
                     
  可以帮我把整道题讲解一下么,麻烦了谢谢
 可以帮我把整道题讲解一下么,麻烦了谢谢                       你好:
主函数的前4句应该理解吧,从if开始讲:
(1)利用scanf函数输入一个数,如果输入的数大于等于0 ,那么进入if下面的语句块(也就是计算阶乘),定义fac是用来存储计算阶乘的结果,fac初始值为1,(如果为0,那么0乘以任何数都等于0,计算结果就会为0)
(2)再次判断输入的值是否大于0,如果大于0,就进入循环语句(例如输入n=3)i=1.n=3成立,进入fac*=i(fac=1*1=1),i+1=1+1=2,
(3)2<=3成立,再次执行fac*=i(fac=1*2),i+1=3,
(4)3<=3成立,再次执行fac*=i(fac=1*2*3)i+1=4,
(5)4<=3不成立,跳出循环.那么3的阶乘就是1*2*3=6;最后用printf输出
(6)最后一句printf语句是与第一个if语句配对的
李木子 发表于2018-04-12 11:37
你好:
主函数的前4句应该理解吧,从if开始讲:
(1)利用scanf函数输入一个数,如果输入的数大于等于0 ,那么进入if下面的语句块(也就是计算阶乘),定义fac是用来存储计算阶乘的结果,fac初始值为1,(如果为0,那么0乘以任何数都等于0,计算结果就会为0)
(2)再次判断输入的值是否大于0,如果大于0,就进入循环语句(例如输入n=3)i=1.n=3成立,进入fac*=i(fac=1*1=1),i+1=1+1=2,
(3)2<=3成立,再次执行fac*=i(fac=1*2),i+1=3,
(4)3<=3成立,再次执行fac*=i(fac=1*2*3)i+1=4,
(5)4<=3不成立,跳出循环.那么3的阶乘就是1*2*3=6;最后用printf输出
(6)最后一句printf语句是与第一个if语句配对的