首页 > 代码库 > 实验五:循环结构
实验五:循环结构
1.知识点:
(1)do while语句其实可理解为实行do后面的式子while(直到) i 到哪截止就停止计算,while语句则需要 i 来控制它的范围,for语句也需要 i 来控制它的范围。
(2)求阶乘时是用fact(i)函数来求,可是朋友告诉了我一种别的方法:
i++;
sum=sum*i;
其实这样做也是和阶乘的原理是一样的,不过就不用写那么多了;
用阶乘是这样子写的:
#include<stdio.h> double fact(int n); int main(void) { int i,n=10; double result,sum; sum=0; for(i=1;i<=n;i++){ result=fact(i); printf("%d!=%.0f\n",i,result); sum=sum+fact(i); } printf("1!+2!+...+10!=%.0lf\n",sum); return 0; } double fact(int n) { int i; double product; product=1; for(i=1;i<=n;i++){ product=product*i; } return product; }
而用那种简单的方法,式子就比上面的少多了:
#include<stdio.h> int main() { double sum1=1,sum2=0,i; while(i<10){ i++; sum1=sum1*i; printf("%.0lf!=%.0lf\n",i,sum1); sum2=sum2+sum1; } printf("1!+2!+...+10!=%.0lf",sum2); return 0; }
这就是聪明人和非聪明人的区别了吧hehe...
(3)斐波那契(Fibonacci)序列这个题老师上课讲了,利用do while循环可以使得X1,X2变换数值直到达到 i 的最大数即题目要求数字.
(4)如果要求式子变换,需要带入中间数值去变换,再转换,比如:
for(i=0;i<n;i++){ sum=sum+flag/denominate; t=flag; flag=flag+denominate; denominate=t; }
2.实验过程中遇到的问题及解决方法:
(1)数学计算表达式不能更为简单地表述,数学问题...
3.实验心得体会:
(1)需要多练多想,大胆去猜测然后实践,还要记清楚各种语句的表示方法...
实验五:循环结构
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。