for语句循环
- for语句的一般形式为:
for(表达式1;表达式2;表达式3)
语句
括号中的3个表达式的主要作用为:
表达式1:设置初始条件,只执行一次。可以为零个、一个或者多个变量设置初值。
表达式2:是循环条件表达式,用来判定是否继续循环。在每次执行循环体前先执行此表达式,决定是否继续执行循环。
表达式3:作为循环的调整,例如使循环变量增值,它是在执行完循环体后才进行的。
- 最常用的for语句形式是:
for(循环变量赋初值;循环条件;循环变量增值)
语句
例如:
for(i=1;i<=100;i++)//控制循环次数,i由1变到100,共循环100次
sum=sum+i;
(1)for语句一般形式如:
for(表达式1;表达式2;表达式3)
语句
其可以改写为while循环的形式,二者无条件等价
表达式1;
while 表达式2{
语句
表达式3
}
- 循环的嵌套
以下几种合法形式
输出4 x 5的矩形
#include <stdio.h>
int main(){
int i,j,n=0;
for(i=1;i<=4;i++)
for(j=1;j<=5;j++,n++){
if(n%5==0)
printf("\n");
printf("%d\t",i*j);
}
printf("\n");
return 0;
}
改变循环执行的状态
- 用break语句提前终止循环, break语句的一般形式为:
break;
其作用是使流程跳到循环体之外,接着执行循环体下面的语句。
- continue语句提前结束本次循环
不想终止整个循环的操作,只提前结束本次循环,并接着执行下次循环。则用continue语句。
输出1~100的不能被3整除的数
#include <stdio.h>
int main(){
int i,n,t;
for(i=1;i<=100;i++){
if(i%3==0)
continue;
printf("%d ",i);
}
printf("\n");
return 0;
}
求最大公因数和最小公倍数
- 求最大公因数 ,首先判断是否可以整除,不能整除的时候将开始的分子作分母,余数作分子再进行相除,直到余数为零 。
- 最小公倍数=两个整数的乘积 / 最大公因数
#include <stdio.h>
int main(){
int x,y,t,n,m;
printf("input two number:");
scanf("%d %d",&x,&y);
if(x<y){
t=y;
y=x;
x=t;
m=x*y;
}
printf("%d %d\n",x,y);
printf("%d\n",m);
while(x%y!=0){
n=y;
y=x%y;
x=n;
}
printf("%d\n",y);//最大公约数
printf("%d\n",m/y);//最小公倍数=两个整数的乘积 / 最大公因数
return 0;
}