icing

导航

实验3

Part1:

1.在循环中,continue语句作用是提前结束本次循环并开始新一轮循环;而break语句作用是结束本层循环,转为执行本层循环语句后的语句。

2. continue语句不影响外层循环,而break语句会影响外层循环。

Part2:

(1)使用while循环:

#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(max<number)
           max = number;
        else if(min>number)
           min = number;
    }
    
    printf("最大数为:%d\n",max);
    printf("最小数为:%d\n",min);
    return 0;
}

 (2)使用do...while循环:

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

 (3)使用for语句:

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

 Part:1.

#include <stdio.h>
#include <math.h>
int main(){
       int i,n=0;
       for(i=101;i<=199;i++){
           int j,m=sqrt(i);
           for(j=2;j<=m;j++){
                  if(i%j==0)
                  break;
        }
        if(j>m){
            printf("%5d",i); 
            n++;
          if(n%5==0)
            printf("\n");  
        }    
    }
    printf("\n100~200之间共有%d个素数。",n); 
    return 0;     
} 

 2.

#include<stdio.h> 
  const int LINE=5;
  const int COLUME=9;
   
int main(){
       int line;int col;
    for(line=1;line<=LINE;line++){
        
        for(col=1;col<=(LINE-line);col++){
            printf(" ");
        }
         for(col=(6-line);col<=(4+line);col++){
             printf("*");
        }
        printf("\n");    
    }
    return 0;
}

 总结体会:

1.本次实验中终于了解了循环结构和break、continue的用法,也就对c程序的认识比较深了,自我感觉总算是入门了;

2.在前面几个部分感觉还好,依葫芦画瓢,挺清楚。但part3花了我太多的时间,也就是自己运用循环结构时候才发现问题。由于没有明了循环结构层次,始终没能正确做出程序,出现了系统未报错但始终不对的情况。最后才发现是定义变量和常量时的逻辑问题;

3.幸运是这次算是感受最深的一次了(一度被part3遇到的问题急得好心烦),但现在回头看,自己已经在培养和c语言相应的思维了。

 互评:

1.     https://www.cnblogs.com/couldi/p/10701912.html

2.      https://www.cnblogs.com/Laupup/p/10701058.html

3.      https://www.cnblogs.com/tty-1999/p/10700804.html

 

posted on 2019-04-13 21:21  icing  阅读(103)  评论(1编辑  收藏  举报