循环结构程序设计.docx
《循环结构程序设计.docx》由会员分享,可在线阅读,更多相关《循环结构程序设计.docx(19页珍藏版)》请在冰豆网上搜索。
![循环结构程序设计.docx](https://file1.bdocx.com/fileroot1/2023-1/30/07ed0007-3642-4663-a3d2-1992fcffc02d/07ed0007-3642-4663-a3d2-1992fcffc02d1.gif)
循环结构程序设计
实验四循环结构程序设计
一.【实验目的】
1、熟练使用、和…语句实现循环结构程序设计。
2、理解循环条件和循环体,以及、和…语句的相同及不同之处。
3、熟练掌握和语句的使用。
4、掌握使用“”菜单调试程序的方法。
二.【实验内容和步骤】
1、程序调试题
A.目标:
进一步学习掌握程序调试的方法和技巧。
B.内容:
参照《实验指导》教材P38“1.调试示例”,改正程序中的错误,使其实现程序的功能。
(注:
程序文件保存在“调试示例”文件夹中,文件名为04_1)
①调试正确的源程序清单
<>
()
{
m,n,j,k;
{
("m:
");
("",);
("n:
");
("",);
}(m<0<0);
j=m;
(j%n0)
j=j+m;
k=(m*n)/j;
("最小公倍数是\n最大公约数是\n",j,k);
0;
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
2、完善程序,并调试运行程序
题目
(1)求1+1/2+1/3+⋯⋯+1。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入1个正整数n(n<=50),计算并输出1+1/2+1/3+⋯⋯+1(保留3位小数)。
(注:
程序文件保存在“第1题”文件夹中)打开1文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,n;
;
("",);
(1;<;ri++)
{
("",);
0;
(1<){
1.0;
}
("%.3f\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目
(2)求n!
。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入1个正整数n(n<=50),计算并输出n!
。
(注:
程序文件保存在“第2题”文件夹中)打开2文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,n;
;
("",);
(1;<;ri++)
{
("",);
1;
(1<){
*i;
}
("%.0f\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(3)求x的n次幂(即:
)。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入1个正实数x和1个正整数n(n<=50),计算并输出x的n次幂(即:
,保留2位小数)。
(注:
程序文件保存在“第3题”文件夹中)打开3文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,n;
x,;
("",);
(1;<;ri++)
{
("",,);
1;
(2<)
*x;
("%.2f\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(4)求1-1/2+1/3-1/4+…+1。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入1个正整数n(n<=100),计算并输出1-1/2+1/3-1/4+⋯⋯的前n项和(保留3位小数)。
(注:
程序文件保存在“第4题”文件夹中)打开4文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,n,;
;
("",);
(1;<;ri++)
{
("",);
0;
1;
(1<){
*1.0;
;
}
("%.3f\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(5)求1+1/3+1/5+1/7+…。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入1个正整数n(n<=100),计算并输出1+1/3+1/5+1/7+⋯⋯的前n项和(保留3位小数)。
(注:
程序文件保存在“第5题”文件夹中)打开5文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,n,;
;
("",);
(1;<;ri++)
{
("",);
1;
0;
(1<){
1.0;
2;
}
("%.3f\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(6)求1-1/3+1/5-1/7+…。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入1个正实数,计算并输出1-1/3+1/5-1/7+⋯⋯,直到最后一项的绝对值小于(保留6位小数)。
(注:
程序文件保存在“第6题”文件夹中)打开6文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
<>
()
{
;
;
,;
("",);
(1;<;ri++)
{
("",);
1;
0;
1;
1.0;
(()>){
*1.0;
;
2;
;
}
("%.6f\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(7)求1-1/3+1/5-1/7+…。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入2个整数和,分别代表摄氏温度的起止值,输出该范围内(步长为1)摄氏温度C和华氏温度F的转换表。
转换计算公式:
32+C*9/5,输出语句:
("10.2f\n",c,f);。
(注:
程序文件保存在“第7题”文件夹中)打开7文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
c,;
f;
("",);
(1;<;ri++)
{
("",,);
("\n");
(<){
32*9/5;
("10.2f\n",c,f);
}
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(8)求奇数和。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
读入一批正整数(以零或负数为结束标志),求其中的奇数和。
(注:
程序文件保存在“第8题”文件夹中)打开8文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
x,;
("",);
(1;<;ri++)
{
("",);
0;
(x>0){
(21)
;
("",);
}
("\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(9)求最大值和最小值。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入一个正整数n,再输入n个整数,输出这n个整数中的最大值、最小值、累加和与平均值。
(注:
程序文件保存在“第9题”文件夹中)打开9文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,,,n,x;
;
("",);
(1;<;ri++)
{
("",);
("",);
;
;
;
(2<){
("",);
(>)
;
;
(<)
;
;
;
}
;
(".\n",);
(".\n",);
(".\n",);
(".\n",);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(10)求整数的位数以及各位数之和。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入一个整数,输出它的位数以及各位数之和。
(注:
程序文件保存在“第10题”文件夹中)打开10文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
;
;
("",);
(1;<;ri++)
{
("",);
1;
(<0)
;
10;
(10>0){
10;
(10);
;
}
(",\n",,);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(11)求2/1+3/2+5/3+8/5+...之和。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入一个正整数n,输出2/1+3/2+5/3+8/5+...的前n项之和,保留2位小数。
(该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子)(注:
程序文件保存在“第11题”文件夹中)打开11文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
;
;
("",);
(1;<;ri++)
{
("",);
0;
2;
1;
(1<){
;
;
;
;
}
("%.2f\n");
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(12)求a+++…a之和。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入2个正整数a和n,输出a+++…a(n个a)之和。
(注:
程序文件保存在“第12题”文件夹中)打开12文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
i,n;
a,,;
("",);
(1;<;ri++)
{
("",,);
0;
0;
(1<){
10*;
;
}
("\n");
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(13)判断素数。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入一个正整数m,如果它是素数,输出"",否则,输出""(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。
(注:
程序文件保存在“第13题”文件夹中)打开13文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(14)统计字符。
程序功能:
从键盘上输入一个正整数(0<<10),做次下列运算:
输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
(注:
程序文件保存在“第14题”文件夹中)打开14文件,在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
,,;
c;
("",);
();
(1;<;ri++)
{
c=();
0;
0;
0;
0;
((())'\n'){
(c>='a'<='z'<='Z'>='A')
;
('')
;
(c>='0'<='9')
;
;
}
(",,,\n",,,,);
}
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(15)【水平考试题】程序文件保存在“第15题(水平考试题)”文件夹中,打开15,编程实现,任输入一个正整数,求1+2+3+…的和。
在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(16)【水平考试题】程序文件保存在“第16题(水平考试题)”文件夹中,打开16,编程实现输入一个长整数,求各位数字的平方和。
例如输入-123,输出14。
在两条星线之间填入相应的代码,使程序完成该功能。
①调试正确的源程序清单
<>
()
{
;
;
<<"请输入一个长整数:
";
>>;
(<0)
;
0;
(>0)
{
10;
*;
10;
}
<<""<
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(17)【水平考试题】程序文件保存在“第17题(水平考试题)”文件夹中,打开17,程序的功能是计算1~100以内所有含5的数之和。
删除程序代码里面的下划线并补充相应的代码。
(注意:
不得改动其它代码,不得增、删行,不得更改程序结构。
)
①调试正确的源程序清单
<>
()
{
0;
(1<=100)
((105)(105))删除下划线并填入答案
;
<<""<
}
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
题目(18)【水平考试题】程序文件保存在“第18题(水平考试题)”文件夹中,打开18,程序的功能是计算某数组中前n个数组元素的乘积。
删除程序代码里面的下划线并补充相应的代码。
(注意:
不得改动其它代码,不得增、删行,不得更改程序结构。
)
①调试正确的源程序清单
②运行结果:
(提示:
通过屏幕截图,贴粘程序运行界面)。
三.【实验总结】
本次实验,涵盖的知识点很多,而且很全面,与课本内容联系紧密。
通过实验,通过自己动手操作,让我发现了不少细节问题,对循环结构程序有了更深刻的认识,特别是对语句的运用和其与语句的同异点。
不过自己对C语言程序设计的一些常识认识还是不全面,还有一些规定也认识不足,导致在这一方面有时很迷惘。
同时,自己对于、的运用不熟悉。
以后自己会多花点时间在这些方面上。