作业——实验三

Part 1.: 验证性内容

 回答并总结这一部分内容中给出的思考题:

1.结合程序demo5_1.cpp和demo5_2.cpp运行结果对比,总结在循环中使用控制语句continue和break, 其功能区别是什么?

 

通过运行结果我们可以看出遇到continue语句时,程序跳过循环体中位于该语句后的所有语句,开始新的循环;遇到break语句时,程序结束本次循环。其功能区别就在于continue是跳过并重新开始,break是结束。

2.结合程序demo6_1.cpp和demo6_2.cpp运行结果对比,回答:

在两层嵌套循环中,内层循环中如果出现continue,是否影响外层循环?

不会影响外层循环。从运行结果我们可看出continue是重新进行它所在的层次的循环,如果它处于内层循环不会影响外层循环。

 

在两层嵌套循环中,内层循环中如果出现break,是否影响外层循环? 

不会影响外层循环。从运行结果可看到break在嵌套循环中直接结束所在层循环,所以不会影响外层循环。

Part2: 补足程序,使得程序运行

1.附上补足后的程序源码blank.cpp,及运行测试结果截图

编码如下:

/*编程找出5个整数的最大数和最小数 
《C语言程序设计教程学习指导》p122实验内容(3) 
*/ 

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

 运行结果如下:

 

2.使用for或do...while语句实现的程序源码,及运行测试结果截图

我使用的是for语句实现的程序:

程序如下:

/* 
编程找出5个整数的最大数和最小数 
《C语言程序设计教程学习指导》p122实验内容(3) 
*/ 

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

运行结果如下:

 Part 3:编程练习

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

程序如下:

/*编程输出101~200之间所有素数,并输出这一区间内素数个数。 预期输出结果如下:*/ 

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

运行结果如下

2.编程显示图案:

/*编程打印要求图案*/ 

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

运行结果如下:

评论以下三位同学的作业:

https://www.cnblogs.com/lizhangrui/p/10673475.html

https://www.cnblogs.com/1418790233xjc/p/10686053.html

https://www.cnblogs.com/yy-Siri/p/10680143.html

posted on 2019-04-11 18:17  东宫女孩  阅读(140)  评论(1编辑  收藏  举报

导航