continue语句
continue语句只能用在循环体中,其一般格式是:
continue;
其语义是:结束本次循环,即不再执行循环体中continue 语句之后的语句,转入下一次循环条件的判断与执行。应
注意的是, 本语句只结束本层本次的循环,并不跳出循环。
void main(){
int n;
for(n=7;n<=100;n++)
{
if (n%7!=0)
continue;
printf("%d ",n);
}
}
输出100以内能被7整除的数。
int n;
for(n=7;n<=100;n++)
{
if (n%7!=0)
continue;
printf("%d ",n);
}
本例中,对 7~100的每一个数进行测试,如该数不能被7整除,即模运算不为 0,则由continus语句转去下一次循
环。只有模运算为 0时,才能执行后面的 printf语句,输出能被 7整除的数。
#include"stdio.h"
void main(){
char a,b;
printf("input a string:\n");
b=getchar();
while((a=getchar())!='\n'){
if(a==b){
printf("same character\n");
break;
}b=a;
}
}
检查输入的一行中有无相邻两字符相同。
char a,b;
printf("input a string:\n");
b=getchar();
while((a=getchar())!='\n'){
if(a==b){
printf("same character\n");
break;
}b=a;
}
本例程序中,把第一个读入的字符送入 b。然后进入循环,把下一字符读入a,比较 a,b是否相等,若相等则输出提示
串并中止循环,若不相等则把 a中的字符赋予b,输入下一次循环。
输出 100以内的素数。素数是只能被1 和本身整除的数。可用穷举法来判断一个数是否是素数。
void main(){
int n,i;
for(n=2;n<=100;n++){
for(i=2;i
if(i>=n) printf("\t%d",n);
}
} int n,i;
for(n=2;n<=100;n++){
for(i=2;i
if(n%i==0) break;
if(i>=n) printf("\t%d",n);
}
本例程序中,第一层循环表示对1~100这 100个数逐个判断是否是素数,共循环 100次,在第二层循环中则对数 n
用 2~n-1逐个去除,若某次除尽则跳出该层循环,说明不是素数。 如果在所有的数都是未除尽的情况下结束循环,
则为素数,此时有i>=n,故可经此判断后输出素数。然后转入下一次大循环。实际上,2以上的所有偶数均不是素数,
因此可以使循环变量的步长值改为2,即每次增加 2,此外只需对数 n用2~n去除就可判断该数是否素数。这样将大
大减少循环次数,减少程序运行时间。
#include"math.h"
void main(){
int n,i,k;
for(n=2;n<=100;n+=2){
k=sqrt(n);
for(i=2;i
if(i>=k) printf("\t-",n);
}
}