日复一日,c复一c

十月二十二日记录。

 三大循环语句

while语句 

 日复一日,c复一c

         简单使用

//计算从1加到100的和 
#include<stdio.h>
int main()
{
	int iNum = 1,iSum = 0;
	while(iNum<=100) 
	{
		iSum = iSum + iNum;
		iNum++;
	}
	printf("%d",iSum);
	return 0;
} 

        注意while(...)括弧中的表达式若为数字,则0表示假,非0表示真,这将直接导致死循环。

        while是先判断后执行,我们可以反过来:

do...while语句

日复一日,c复一c

         简单使用

#include<stdio.h>
int main()
{
	int i = 1;
	do
	{
		i++;
	}
	while(i<20);
	printf("%d\n",i);
	return 0;
} 
//用do...while实现1加到100 
#include<stdio.h>
int main()
{
	int iNum = 1,iSum = 0;
	do
	{
		iSum += iNum;
		iNum++; 
	}
	while(iNum<=100);
	
	printf("%d\n",iSum);
	return 0;
} 

        注意while语句后应加分号;。

for语句

日复一日,c复一c

         一般形式

for(表达式1;表达式2;表达式3)

{

        循环语句;

}

         在这里for中表达式2用于判断是否进入循环,若是则执行循环语句,然后才执行表达式3。

        简单使用

//求平方和倒数序列的部分和
#include<stdio.h>
#include<math.h>
int main()
{
	double m,n;
	scanf("%lf %lf",&m,&n);					//输入m、n 
	
	double sum=0;
	for(double i=m;i<=n;i++)
	{
		sum = sum + pow(i,2) + 1/i;			//求m^2+1/(m)^2+(m+1)^2+1/(m+1)^2+...+n^2+1/(n)^2 
	}
	printf("sum = %.6f",sum);
	return 0;
}

         注意用for语句求解问题是需仔细考虑循环思路。

        for语句中表达式1有时候可以省略。

循环嵌套

        for语句与while语句dowhile语句可以嵌套使用。

//用循环语句输出金字塔形状
todo
//用循环语句打印乘法口诀表
todo

转移语句

 goto语句

goto 标识符;

......

标识符:

......

        goto 可以往前跳也可以往后跳,也可以跳出一个循环也可以跳入一个循环。

break语句

break;

         只能用在循环语句和switch语句中。

while(1)

{

        printf("sth");

        break;

}

         上述break作用不同于switch语句中的break。

continue语句

continue; 

        continue用于结束本次循环,然后执行下一次循环。

        不同于break,break是直接结束整个循环过程。

上一篇:[017] [RT-Thread学习笔记] 线程栈的初始化


下一篇:1.大数据概述