C语言学习笔记之(for循环)

一、for循环语句结构

1.常用写法

for(条件1;条件2;条件3)
    语句;
	语句;

2.其他写法

int i;
i=1;	/*这里是条件1*/
for(;条件2;条件3)
for(::)		死循环写法/**/
int i;
for(i=1;;i++)	/*死循环第二种写法*/

3.多条件写法

for(条件1,条件2;条件3,条件4;条件5,条件6)

二、例子:用for语句求S=1+2+3+…+n的值。

#include <stdio.h>
int main()
{
	int i,n,S;				/*定义变量*/
	printf("请输入n的值:");		/*输出提示语*/
	scanf("%d",&n);			/*输入n的值*/
	S=0;				/*给S赋初值*/
	for(i=1;i<=n;i++)			/*循环,当i>n时结束*/
		S+=i;			/*求和,将结果放入S中*/
	printf("S=%d\n",S);		/*输出S的值*/
	return 0;
}

三、例子:输出1~1000之间能同时被3、5、7整除的数。

#include<stdio.h>
int main()
{  
	int i=1;					/*定义变量i*/
	for(i=1;i<=1000;i++)			/*i从1到1000循环1000次*/
	{
		if(i%3==0&&i%5==0&&i%7==0)	/*如果满足条件则输出i的值*/
			printf("%4d",i);
	}
	printf("\n");				/*输出回车符*/
	return 0;
}

四、循环的嵌套

在C语言中不同的循环之间是可以嵌套的

1.例子:实现输出3~50之间的所有素数。

#include <stdio.h>
int main()
{
	int tag,i,k;				/*定义变量*/
	for(k=3;k<=50;k++)		              /*外循环,当k>50结束循环*/
	{
	         tag=1;				/*标志变量赋初值*/
	         for(i=2;i<=k-1;i++)		              /*内循环,循环检测k能否被i整除*/
		if(k%i==0)		              /*k能被i整除时*/
		{
		          tag=0;		              /*令tag=0,k不是素数*/
		          i=k;		               /*令i=k,即可退出内循环*/
	              }
	         if(tag==1)			              /*如果tag为1,k为素数,输出k*/
		          printf("%3d",k);
	}
	printf("\n");				/*最后输出回车符*/
	return 0;
}