实验三

Part 1

continue只控制本次循环结束

#include <stdio.h>
int main(){
    int i;
    for(i=1;i<=5;i++){
        if(i%3==0)
        continue;
        printf("i=%d\n",i);
    }
    return 0;
}

break出现后,此次循环及其以后的循环均不再执行

#include <stdio.h>
int main(){
    int i;
    for(i=1;i<=5;i++){
        if(i%3==0)
        break;
        printf("i=%d\n",i);
    }
    return 0;
}

在两层嵌套循环中,内层无论出现continue还是break,均不影响外层循环

#include <stdio.h>
const int LINE=3;
const int COLUME=5;
int main(){
    int line;
    int col;
    for(line=1;line<=LINE;line++){
        for(col=1;col<=COLUME;col++){
            if(col%3==0)
            continue;
            printf("%5d",col);
        }
        printf("\n");
    }
    return 0;
}

#include <stdio.h>
const int LINE=3;
const int COLUME=5;
int main(){
    int line;
    int col;
    for(line=1;line<=LINE;line++){
        for(col=1;col<=COLUME;col++){
            if(col%3==0)
            break;
            printf("%5d",col);
        }
        printf("\n");
    }
    return 0;
}

 

Part 2

#include <stdio.h>
int main(){
    int number,max,min,n;
    n=1;
    printf("输入第%d个数: ",n);
    scanf("%d",&number);
    max = number;
    min = number;
    while(n<=4){
        n++;
        printf("输入第%d个数: ",n);
        scanf("%d",&number);
        if(number>=max)
        max = number;
        else if(number<=min)
        min = number;
    }
    printf("最大数为: %d\n",max);
    printf("最小数为: %d\n",min);
    return 0;
    
}

#include <stdio.h>
int main(){
    int number,max,min,n;
    n=1;
    printf("输入第%d个数: ",n);
    scanf("%d",&number);
    max = number;
    min = number;
    for(n=1;n<=4;n++)
    {
        printf("输入第%d个数: ",n);
        scanf("%d",&number);
        if(number>=max)
        max = number;
        else if(number<=min)
        min = number;
    }
    printf("最大数是:%d,最小数是:%d",max,min);
    return 0;
    
}

 

Part 3

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{
    int i,m,n;
    for(n=101;n<=200;n++)
    {
        m=sqrt(n);
        for(i=2;i<=m;i++)
        if(n%i==0)break;
        if(i>m)
        printf("%d\n",n);
    }
    return 0;
 } 

#include <stdio.h>
int main()
{
    int line,col;
    for(line=1;line<=5;line++)
    {
        for(col=5-line;col>0;col--)
        {
            printf(" ");
        }
        for(col=1;col<=2*line-1;col++)
        {
            printf("*");
        }
        printf("\n");
    }
    return 0;
}

 

实验总结:

关于循环的嵌套使用我经常理不清循环结构,以后要加强练习。

关于循环的条件,一定要注意临界的取值,否则会导致循环次数的错误。

 

posted @ 2019-04-13 20:15  qinyaqi  阅读(127)  评论(1编辑  收藏  举报