实验三报告

Posted xiaerhe

tags:

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

一、实验报告

Part1: 验证性内容

1.demo5_1.cpp运行结果

技术图片

demo5_2.cpp运行结果

技术图片

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

break功能:break语句的作用是结束本层循环,跳出循环结构,转而执行本层循环语句后的语句。

2.demo6_1.cpp运行结果:

技术图片

demo6_2.cpp运行结果:

技术图片

在两层嵌套循环中,内层循环中如果出现continue,不影响外层循环;

在两层嵌套循环中,内层循环中如果出现break,不影响外层循环。

Part2: 补足程序

1.补足的程序源码blank.cpp

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

运行结果:

技术图片

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

运行结果:

技术图片

Part3: 编程练习

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

//编程输出101~200之间所有素数,并输出这一区间内素数个数。
#include <stdio.h>
int main() {
    int n,m,count;
    count==0;
    for(n=100;n<200;n++) 
    { 
    for(m=2;m<=n;m++)
    {
        if(n%m==0)
        {
            break;
        }
    }
    if(n==m)
    {
        count++;
        printf("%d ",n);

if(count%5==0)

       printf(" ");

      }

  }
    printf("
这一区间内素数个数:%d
",count);
     return 0 ;
}

运行结果:

技术图片

2.

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

运行结果:

 技术图片

二、实验总结

1.part1第一部分判断三角形形状,我输入的是“3,3,3”显示不能构成三角形,但是输入“3 3 3”成立。查阅书后发现:“在有多个输入项时,一般用空格或者Enter键作为分隔符”此外,在输入字符类型时空格也会被读入并赋值给变量。

 2.在输入成绩等级制实验的时候

printf("输入学生成绩: ");
if(scanf("%d",&score) == 0) // 如果检测到没有成绩输入,则结束整个循环
break;

代码中==0是逻辑假的意思,刚开始没看懂,下次会注意一点。

3.在补足程序的时候写的n<=5 输出了6个数,细节地方也要多多考虑。

4.编写输出101~200之间所有素数,并输出这一区间内素数个数的程序时,考虑了很多种方法都不对,课上讲的语法都还没有掌握牢固。(尝试多次失败后,选择百度的编程)
以下是最后的编程,实在找不出问题所在:
//编程输出101~200之间所有素数,并输出这一区间内素数个数。
#include <stdio.h>
#include <math.h>
int main() {
    int n,m;
    for(n=100;n<200;n++) 
    { 
    m=2;
    while(m<=sqrt(n))
    {
        if(n%m!=0)
        m++;
        }    
    printf("%d ",n );
    } 
    return 0;        
}
    

结果是这样的:

技术图片

如果有大佬看到,请教一下怎么回事?

5.编写图形的程序时,空格不知道怎样控制,试过很多,例如

    printf("%5s","*" );

也不对,最后百度了一下才知道应该再加一个循环结构。

 

总的来说,还是需要在不断编程实践中吸取教训。

 互评:

https://www.cnblogs.com/wxy7/

www.cnblogs.com/plisetsky

https://www.cnblogs.com/qinyaqi/

 

 

 

 

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

2017-2018-2 《程序设计与数据结构》实验三报告

2018-2019-2-20175327 蜂凯南 实验三 《敏捷开发与XP实践》实验报告

# 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告

2018-2019-2 20175223 实验三《敏捷开发与XP实践》实验报告

20172301 2017-2018-2 《程序设计与数据结构》实验三报告

2018-2019-2 20175224 实验三《敏捷开发与XP实验》实验报告