实验三

Posted lvzixuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验三相关的知识,希望对你有一定的参考价值。

实验结论

part.1

思考题:

 

思考1: 把 demo1.cpp中嵌套使用的if语句部分替换成以下代码,是否可以?在软件环境中,替换代码,然
后运行程序,输入不同边长数据进行测试验证

可以,见下图

demo1

技术图片

demo1.1

技术图片

 

思考2:结合程序demo5_1.cpp和demo5_2.cpp运行结果对比,回答以下问题:

在循环中使用控制语句continue和break,其功能区别是什么

continue:只能用于循环结构中,当遇到continue语句,程序就跳过本次循环体中位于该语句后的所有语句,提前结束本次循环并开始新一轮的循环。

break:在学习switch语句中,break语句的作用是在case子句执行完后,通过break语句跳出switch结构。在循环语句中,break语句的作用是结束本次循环,转而执行本次循环语句后面的语句。

思考3:

结合程序demo6_1.cpp和demo6_2.cpp运行结果对比,回答以下两个问题:
在两层嵌套循环中,内层循环中如果出现continue,是否影响外层循环?
在两层嵌套循环中,内层循环中如果出现break,是否影响外层循环?

都不会影响外层循环。

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

技术图片

part.3

/*编程输出101~200之间的所有素数,
并输出这一区间内的素数个数*/

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

int main(){
    int n,m,i,x=0;
    for(n=101;n<=200;n=n+1){
        m=sqrt(n);
        for(i=2;i<=m;i++)
    if(n%i==0)
    break;
    if(i>m){
    
    printf("%5d",n);    
    x=x+1;
    if(x%5==0)
    printf("
");
}
    }
    printf("
");
    printf("101~200共有%d个素数",x);
    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("
");
    }
    return 0;
}

技术图片

 

part.4

霍格沃茨历险记这周咕咕咕了。。。这次实验有点难我枯了过两天等写了再往上打吧quqqqq。

 

实验总结与体会

1.实验三学到了continue和break的用法,还有巩固了之前学的循环语句。感觉后者用起来比较熟练了,但是每当套了好几个循环语句的时候就感觉特别头大。我是谁我在哪???大括号一多我就蒙然后会出错啊巴拉巴拉。

2.这次实验感觉比前两次都要难QAQ,然后代码一复杂就又会犯之前的老毛病,比如多加“;”或者少加“;”之类的。

3.新学的内容还好,但是感觉控制格式的时候还是有点奇奇怪怪的感觉比如说前面那个100~200素数的代码,我实在是不会怎么打出老师给的那个标准的运行结果然后就胡乱试了很多次然后被我给蒙出来了。。。

4.对于基础内容还是不够熟悉吧,循环语句真的好难啊我这两天应该要多写一些其他带循环语句的程序来体会一下。

5.我写这篇博客的时候不小心点到上面那个无序编号了我弄不掉了啊啊啊啊啊啊啊啊啊啊啊。下面两个小黑点看着好不爽啊我疯了=-=!!!

 

以上是关于实验三的主要内容,如果未能解决你的问题,请参考以下文章

汇编实验五

实验四

验证码逆向专栏极验三代四代点选类验证码逆向分析

C++项目三代码参考(改进版)

实验五

JSP 设计教师与学生不同登陆界面(带验证码)