c语言中计算圆周率的值:以实例跟我学while循环结构
c语言中计算圆周率的值:以实例跟我学while循环结构相对于第1种形式,其特点是,先无条件执行循环,然后再判断循环条件是否成立,若成立则继续执行循环体语句。也就是说,这种方式循环体语句至少会执行一次。do ... while语句的基本形式一般为:while语句的基本形式一般为:其中,表达式是条件表达式,语句是循环体,只要循环条件表达式为真,就执行循环体语句。其特点是先判断条件表达式,后执行循环语句。2、do ... while语句的一般形式
循环结构是编程语言中的一种基本程序结构,C语言中有两种表示方法,分别可通过for循环和while循环结构实现。上篇文章已经讲了for循环的使用方法,详细请参考:C语言基础:以实例跟我学循环结构之for break continue用法
这次通过一个计算圆周率pi的例子给大家介绍C语言中while循环结构的编程方法。
基本语法说明While循环有两种实现形式,下面分别说明。
1、while语句的一般形式
while语句的基本形式一般为:
其中,表达式是条件表达式,语句是循环体,只要循环条件表达式为真,就执行循环体语句。其特点是先判断条件表达式,后执行循环语句。
2、do ... while语句的一般形式
do ... while语句的基本形式一般为:
相对于第1种形式,其特点是,先无条件执行循环,然后再判断循环条件是否成立,若成立则继续执行循环体语句。也就是说,这种方式循环体语句至少会执行一次。
下面通过例子分别演示不同情况的用法。
while循环编程示例示例要求是根据公式求圆周率pi的近似值,题目具体说明如下:
上式继续化简,可得圆周率pi的公式为:
1、while语句的实现形式
根据这个公式,使用while循环在C语言中的实现代码如下图所示:
下面对代码作简要说明:
第7-10行定义了4个变量,其中r用来存储上面公式中每一项的值。
第12行先计算一次r的值,用以在while循环中先执行一次判断。
第13-18行,在while循环里面计算r的值,将其累加到变量sum中,并使i自加1。While的循环条件是只要r的绝对值大于10的-6次方就继续循环,否则退出循环。
第20行,计算pi的值,根据公式,sum*4即为pi的值。
第22行,在控制台上打印pi的值,保留10位小数。
程序运行结果如下图所示:
2、do ... while语句的实现形式
上面的实现方式也可改为使用do...while循环的形式,在C语言中的代码如下图所示:
其中,第12-17行,在do...while循环里面计算r的值,将其累加到变量sum中,并使i自加1。循环条件仍然是只要r的绝对值大于10的-6次方就继续循环。与只使用while的区别是,它先执行了一次循环体,然后再来判断是否继续循环。所以,这儿在循环外不需要先计算r的值了。
其运行结果同上例完全相同。
总结While循环相比于for循环,在循环次数确定的情况下for循环用起来可能更方便些,而while循环在循环次数不确定的情况下用的可能更多一些。
欢迎加关注,共同交流。