首页 > 其他 > 详细

实验三

时间:2019-04-13 17:12:49      阅读:98      评论:0      收藏:0      [点我收藏+]

 

Part1: 验证性内容

*分别运行程序demo5_1.cpp和demo5_2.cpp,结合运行结果,对比和理解控制语句continue和break的功 能。 源码文件demo5_1.cpp及运行结果:

break语句

技术分享图片                         技术分享图片          

continue语句

技术分享图片            技术分享图片

 

 

1.break语句可以用在switch语句中,可以用在循环,可以跳出本层循环;break之后的语句不会执行

2.continue语句不能用于switch语句中,只能用在循环语句中,退出本次循环,直接进入下一次循环,continue之后的语句不会执行。

 

 

*对比和理解在嵌套的循环中控制语句 continue和break的

continue

技术分享图片                             技术分享图片

break

技术分享图片                         技术分享图片

由运行结果可知,两者只分别结束和跳过了内层循环,都是三行,未曾影响外层循环。

内层循环中如果出现break和continue都不影响外层循环。

 

Part2: 补足程序,使得程序运行 编程找出5个整数中的大数和小数,并输出找出的大数和小数。

补足后的程序以及运行结果:

#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;
} 
 

技术分享图片

 

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

技术分享图片

 

*尝试用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{
        printf("输入第%d个数: ", n);
        scanf("%d", &number);
        n++;
        
        if(number>max)
            max = number;
        else if(number<min)
            min = number;
    }
    while(n<=5);
    printf("最大数为: %d\n", max);
    printf("最小数为: %d\n", min);
    
    return 0;
} 
 

技术分享图片

while()加分号,for注意{}

 

Part3:编程练习

1.编程输出101~200之间所有素数,并输出这一区间内素数个数。 

#include<stdio.h>
#include<math.h>

int main(){
    int a,c,d;
    
    for(a=100;a<=200;a++)
{
    for(c=2;c<=sqrt(a);c++)
{    
    if(a%c==0)
    {break;}
}
     if(c>sqrt(a))
    printf("%4d",a);
    
}
    


    return 0;
} 

技术分享图片

一开始我用b=sqrt(a),始终输出的为100-200所有数,开完根号的不一定是整数,而int b为整数

 

2.编程打印输出图案

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

技术分享图片

一开始想了很久怎么输出空格,后来发现直接printf(" ")就可以了

 

总结

对循环嵌套语句的使用和规范有待加强,要培养自己独立思考算法的能力

 

 

 

 

 

 

 

 

 

 

 

 

 

技术分享图片技术分享图片

技术分享图片技术分享图片

---恢复内容结束---

实验三

原文:https://www.cnblogs.com/aoliaoliao/p/10701481.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!