C语言循环总结以及实例讲解
除了 while 和 for 语句,在C语言中还有一个语句 goto,它也能构成循环。不过由于 goto 语句很容易造成代码混乱,维护和阅读困难,饱受诟病,不被推荐,而且 goto 循环完全可以被其他循环取代,所以后来的很多编程语言都取消了 goto 语句,我们也不再讲解。
对于while和do-while循环,循环体中应包括使循环趋于结束的语句。
用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在内部实现循环变量的初始化。
for循环是最常用的循环,它的功能强大,可以代替其他循环。
分析:首先,系数为正数的项的分母是4n-3(n为正数项的项数),为负数的项的分母为4n-1(n为负数项的项数),即分母的变化规律是1、3、5、7...的奇数数列,则第n项的分母为2n-1,第10000项的分母为2*10000-1。
i 的值越大,结果越精准,同样计算时间也更长。
读者要注意,学习了if、switch、while、for 语句你就可以写一些简单的小程序了,这对大部分人是一个障碍。
相信你肯定明白了选择结构和循环结构的语法,但是遇到实际问题时,可能仍然不知道从何入手,写不出代码,这是因为大家初学编程,还没有形成编程思维,没有足够的编程经验,编程不仅仅是语法,更多的是解决问题的能力。
大家要多参考别人的代码,并通过实例练习来不断强化编程思维,我们也给出了很多例子,希望大家好好研习并能够自己完成代码。
国内很多大学仍然讲解 goto 语句,但也仅仅是完成教材所设定的课程,goto 语句在实际开发中很难见到。
总结
while和for 循环都可以用来处理同一个问题,一般可以互相代替。对于while和do-while循环,循环体中应包括使循环趋于结束的语句。
用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在内部实现循环变量的初始化。
for循环是最常用的循环,它的功能强大,可以代替其他循环。
几个例子
用下面的公式求π:分析:首先,系数为正数的项的分母是4n-3(n为正数项的项数),为负数的项的分母为4n-1(n为负数项的项数),即分母的变化规律是1、3、5、7...的奇数数列,则第n项的分母为2n-1,第10000项的分母为2*10000-1。
#include <stdio.h> #include <math.h> int main() { double p=0,j=1; int i; for( i=1;i<10000;i++ ) //此处i为项数 { j=pow(-1.0,i+1)/(2*i-1); //pow(x,y)用来求x的y次幂 p+=j; printf("%lf\n",4*p); //输出每一项的值 } printf("%lf\n",4*p); //输出最终pi值 return 0; }由于输出结果较多,请大家自己运行代码。
i 的值越大,结果越精准,同样计算时间也更长。
pow() 是一个数学函数,使用方法为pow(x, y),用来求x的y次幂;需要引入头文件 math.h。更多例子请查看:
- C语言判断一个数是否是素数
- C语言输出2的N次幂
- C语言输出九九乘法表(5种解法)
- 百钱买百鸡问题(C语言版)
- 计算用1分钱、2分钱、5分钱组成1元钱的方式
- 计算一个数的平方根
- 找到一个数的所有真因子
- 计算你收藏的硬币值多少钱
- 输入n个整数并计算它们的和
读者要注意,学习了if、switch、while、for 语句你就可以写一些简单的小程序了,这对大部分人是一个障碍。
相信你肯定明白了选择结构和循环结构的语法,但是遇到实际问题时,可能仍然不知道从何入手,写不出代码,这是因为大家初学编程,还没有形成编程思维,没有足够的编程经验,编程不仅仅是语法,更多的是解决问题的能力。
大家要多参考别人的代码,并通过实例练习来不断强化编程思维,我们也给出了很多例子,希望大家好好研习并能够自己完成代码。