实验四 循环结构程序的设计
- 格式:doc
- 大小:59.50 KB
- 文档页数:8
实验4 程序设计(4学时)目的与要求1.掌握VFP程序设计特点,程序文件的建立、修改和运行方法;2.掌握环境设置语句的含义和基本输入输出命令的使用;3.掌握VFP的顺序、选择和循环结构的设计方法;4.掌握程序设计过程中参数传值和传引用的传递规则;5.掌握子程序、过程和自定义函数的建立,以及调用与返回规则;6.掌握内存变量的作用域属性及对参数传递的影响。
实验内容一、实验准备1.参照“附录一”,熟悉VFP 6.0 程序文件的建立、修改和运行方法;2.将ftp上实验指导书文件夹中“实验项目5、6用表”文件夹下的学生表(student.dbf)、成绩表(score.dbf)、课程表(course.dbf)以及备注文件“student.fpt”四个文件,拷贝到C:\Program Files\Microsoft VisualStudio\Vfp98目录下,然后完成实验。
示例与程序中用到的三个表结构如下,各位同学可以参照这些结构还原这三个数据表之间的相互关联。
二、顺序结构程序设计1.VFP的顺序程序设计方法。
2.完成如下程序设计:(1)物体长度可以用公制或者英制单位表示,已知公制长度单位为毫米(mm),英制单位长度为英寸(inch),其转换公式为1 inch = 25.4 mm,编写程序将输入的英制长度转换为公制后输出。
(2)从键盘输入圆锥体的半径(r)和高度(h),计算其体积并输出,体积计算公式为v = π * r * r * h / 3。
(3)求方程ax2 + bx + c = 0的根,a, b, c的值从键盘输入(假设输入的a, b,c值满足b2– 4ac ≥ 0,不考虑虚根的情况)。
(4)由键盘输入学生名,将“student表”中该学生的奖学金增加100元,并显示该学生修改后的奖学金。
(5)分析下面程序的输出结果。
USE studentINDEX ON 姓名TAG nameidxACCEPT "请输入要查找的学生姓名" TO 姓名SEEK M -> 姓名DISPLAY三、选择结构程序设计1.VFP的选择程序设计方法。
《高级语言程序设计》实验报告实验序号:2 实验项目:数据类型、运算符和表达式09机制2 学号232 姓名叶志伟专业、班级实验地点1-511 指导教师胡亮实验时间 3.15一、实验目的及要求1.掌握C基本数据类型的基本概念、基本属性。
2.学会如何书写一个整型、字符型、实型常量。
3.掌握C算术运算符的基本概念、基本属性、运算规则。
二、实验设备(环境)及要求使用Visual C++ 6.0;windows系列操作系统的环境。
三、实验内容与步骤1.输入下列源程序,进行修改、编译、连接和运行。
程序:main ( ){ char c1,c2;c1=97;c2=98;printf("%c,%c\n",c1,c2);printf("%d,%d\n",c1,c2);}运行结果是:两行结果的不同是由什么引起的:程序定义了输出的类型,第一个输出字符型,另一个输出整型。
2.输入并运行下面的程序:#include<stdio.h>void main(){char c1,c2,c3;c1=getchar();c3=getchar();putchar(c1);putchar(c2);putchar(c3);}观察以下不同输入时的输出,分析不同输出的原因。
(↙表示回车)(1)123↙(2)12↙(3)1↙2↙运行结果是:分析运行结果:getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).当用户键入回车之后,getchar才开始从stdin流中每次读入一个字符.getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键.3.把以上程序改写如下,用于上面相同的输入运行,分析不同输出的原因。
实验四:循环结构程序设计班级:学生姓名:学号:一、实验目的1、理解循环的概念2、理解并掌握循环结构相关语句的含义、格式及使用3、学会循环的应用及控制,包括:①掌握使用循环输入多个数据的方法②掌握在多个数据中有选择地输出数据的方法③掌握在多个数据中对某种数据进行计数的方法④掌握求多个数据中最大值、最小值的方法⑤掌握使用break、continue语句终止循环4、掌握循环的嵌套二、知识要点1、循环变量、循环条件、循环体的概念2、三种循环语句的一般格式、执行过程3、理解选择结构与循环结构中“条件表达式”之不同含义4、二重循环的执行过程三、实验预习(要求做实验前完成)1、循环变量的主要用途是:2、用循环求多个数的和之前,先要把和的初始值赋为:3、用循环求多个数的乘积之前,先要把乘积的初始值赋为:4、字符变量能否作为循环变量?5、循环过程中,如果循环条件成立,但需要结束循环,可采用什么办法?6、什么叫循环的嵌套?四、实验内容(要求提供:①算法描述或流程图②源程序)1. 编程,利用循环计算以下表达式的值:(5+52)*(4+42)*(3+32)*(2+22)*(1+12)*(1/2+1/3+1/4+1/5)(for循环)include <stdio.h>#include <stdlib.h>int main(){int a;double sum=1,sum1=0;for(a=1;a<=5;a++)sum=sum*(a+a*a);printf("结果为%lf\n",sum);for(a=2;a<=5;a++)sum1=sum1+(1.0/a);printf("%lf\n",sum1);printf("结果为%lf\n",sum*sum1);return 0;}2. 编程,从键盘输入若干个整数,当输入0时,输入停止。
实验结论循环结构程序设计一、引言二、实验目的三、实验原理1.循环结构的概念2.循环结构的分类3.循环结构程序设计的基本原则四、实验步骤1.确定循环次数和循环条件2.选择合适的循环结构语句3.编写循环体语句五、实验结果分析六、结论与讨论引言:编程是计算机科学中非常重要的一部分,而程序设计中常用到的循环结构也是非常重要的一种控制流程方式。
本文将介绍如何进行循环结构程序设计,并给出相应实验结果及分析。
实验目的:通过本次实验,我们将学会如何使用不同类型的循环结构来控制程序流程,并能够编写简单而有效的程序。
实验原理:1. 循环结构的概念:在程序运行过程中,为了重复执行某些操作或者根据特定条件反复执行某些操作,需要使用到循环结构。
2. 循环结构的分类:常见的有while循环、do-while循环和for循环。
3. 循环结构程序设计基本原则:确定好需要重复执行多少次或在什么情况下需要重复执行,选择合适的循环结构语句,编写循环体语句。
实验步骤:1. 确定循环次数和循环条件:在程序设计之前,需要明确需要重复执行多少次或在什么情况下需要重复执行。
2. 选择合适的循环结构语句:根据确定好的循环次数和循环条件,选择while、do-while或for等不同类型的循环结构语句。
3. 编写循环体语句:在循环结构中,需要编写具体的操作语句来实现所需功能。
实验结果分析:通过本次实验,我们可以发现,在程序设计中使用不同类型的循环结构可以有效地控制程序流程,并且能够编写出简单而有效的程序。
同时,在实际应用中也需要根据具体需求来选择合适的循环结构类型以及确定好相应的循环次数和条件。
结论与讨论:通过本次实验,我们深入了解了循环结构程序设计,并掌握了相应技能。
在今后的学习和工作中,我们将继续深入研究相关知识,并且不断提高自己在编程方面的能力。
实验一:简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的编译环境和编写过程。
2、掌握C语言程序在Visual C++ 6.0环境下的调试过程。
3、初步了解C语言程序的特点。
4、掌握C语言的数据类型。
三、实验内容:1、计算两个数x和y的和。
(教材P5【例1-2】)2、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。
(实验教材P18)3、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。
(实验教材P27)4、从键盘上输入两个整数x、y,实现两个数的交换,并求出最大值、最小值和两个数的平均值。
(实验教材P21)5、输入并运行以下程序,分析运行结果。
(实验教材P27)#include <stdio.h>void main( ){int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}四、实验程序代码:五、实验运行结果(截图):实验二:顺序结构程序设计(2学时)一、实验方式:一人一机二、实验目的:1、掌握标识符、常量、变量的定义及使用。
2、掌握C语言的常用运算符及表达式。
3、掌握单分支if语句的使用方法。
4、掌握双分支if-else语句的使用方法。
三、实验内容:1、从键盘输入一个3位整数,请输出该数的逆序数。
(实验教材P27)2、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。
(实验教材P27)3、判断箱子是正方体还是长方体。
(实验教材P33)4、有一函数: x (x<1)y= 2x-1 (1≤x<10)3x-11 (x≥10) 编写程序,输入x值,输出y值。
实验四循环结构程序设计2(参考答案)(1)编写程序sy4-1.c,输入n,计算并输出如下多项式的值:S n=1+1/2!+1/3!+1/4!+…+1/n!。
例如输入n为15时,输出1.718282。
算法分析:第一项可以看成1/1!,用循环控制累加n个分式,分式的分母是i!,分子固定为1。
参考答案:# include <stdio.h>void main(){double s=0,p=1;int i,n;scanf("%d",&n);for(i=1;i<=n;i++){p = p * i ; //计算分母i!s = s + 1 / p ; //累加}printf("s=%lf\n",s);}运行结果:(2)编写程序sy4-2.c,输入n,根据以下公式计算s:,例如当n=11时,结果为1.833333。
算法分析:该多项式的分母是累加。
参考答案:# include <stdio.h>void main(){double sn=0,s=0;int i,n;scanf("%d",&n);for(i=1;i<=n;i++){s = s + i ; //计算分母1~i的累加和sn = sn + 1 / s ;}printf("sn=%lf\n",sn);}运行结果:(3)编写程序sy4-3.c,计算3~n之间所有素数的平方根之和,要求:输入n,输出结果。
例如,输入n 的值是100,则输出结果是148.874270。
注意n应在2~100之间。
算法分析:穷举3~n之间的数找素数,若是素数则累加她的平方根。
参考答案:# include <stdio.h># include <math.h>void main(){int i,j,n,flag;double s=0;scanf("%d",&n);for(i=3;i<n;i++) //穷举3~n之间找素数{flag=1; //假设当前的i是素数,标志变量设为1for(j=2;j<i;j++) //穷举要判断是否是素数的i的除数,范围2~i-1if(i%j==0) //若i能被j整除,则不是素数{ flag=0; break; } //标志变量改为0,并终止循环if( flag == 1 )s = s + sqrt( i ); //若i是素数,则累加sqrt(i)}printf("s=%f\n",s);}运行结果:(4)编写程序sy4-4.c,根据以下公式求p的值,(m与n为两个正整数且m>n)。
实验一:设计简单的VB 应用程序一、实验目的1.掌握Visual Basic 启动和退出的方法。
2.熟悉Visual Basic 的集成开发环境。
3.掌握Visual Basic 程序设计的基本步骤,了解VB 程序的编写、保存和编译的方法过程。
4.初步了解几个常用基本控件控件(标签、命令按钮和文本框)的使用方法。
二、实验类型综合三、实验时间:2013-3-8四、实验任务1、启动Visual Basic ,然后创建一个“标准 EXE ”工程(保存在D 盘以自己学号命名的文件夹中,文件名和窗体名均为SJT ),并了解Visual Basic 集成开发环境下各组成部分及其作用。
2、编一程序,计算任意输入的正整数的平方根。
3、编写一个应用程序,界面如图1-1所示。
窗体中文字“VB 应用程序!”为一标签控件,单击标题为“放大”的命令按钮,则“VB 应用程序!”的字号放大一号,单击“缩小”按钮则反之;同时,窗体中还有4个含某种指向图案的按钮,若单击某个按钮,则使“VB 应用程序!”向该按钮所指向的方向移动50Twip 。
(提示:四种指向的图案可以在Visual Basic 安装目录中的“…graphics\icon\Arrows ”子目录中找到,名称分别为arw07dn.ico 、arw07lt.ico 、arw07rt.ico 和arw07up.ico )五、实验要求 写出实验报告,内容是:1、第1小题的操作步骤2、第2、3题1).程序的界面设计。
2).程序主要代码。
3).运行结果(输入与输出)。
4).实验总结。
(写上你自己的总结。
可以从以下几个方面来总结:你在编程过程中花时多少?时间是怎么分配的?多少时间在思考问题?遇到了哪些难题?你是怎么克服的?你对你的程序的评价?你的收获有哪些?)图1-1 实验1-2程序运行实验二:数据的输入和输出一、实验目的1.掌握常量和变量、表达式的基本概念和正确书写格式。
2.掌握基本语句(Print语句、赋值语句、Dim语句等)的使用;3、掌握常用函数的正确使用方法;4、掌握数据的动态输入InputBox和信息提示MsgBox的基本使用方法。
实验四 选择结构和循环结构程序设计实验目的:1.掌握建立和执行M 文件的方法 2.掌握利用if 语句实现选择结构的方法 3.掌握利用switch 语句实现多分支选择结构的方法 4.掌握利用for 语句实现循环结构的方法 5.掌握利用while 语句实现循环结构的方法 6. 熟悉利用向量运算来代替循环操作的方法实验内容:1. 求分段函数的值。
3及2其它,1x 且50,653且0,6222≠⎪⎩⎪⎨⎧--≠<≤+--≠<-+=x x x x x x x x x x y用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。
x=input('请输入x 的值:x=');if(x<0&x~=-3)y=x.*x+x-6elseif(x>=0&x<5&x~=2&x~=3)y=x.*x-5.*x+6elsey=x.*x-x-1end请输入x 的值:x=[-5.0 -3.0 1.0 2.0 2.5 3.0 5.0]y =29.0000 11.0000 -1.0000 1.0000 2.7500 5.0000 19.00002. 输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。
其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。
要求:a) 分别用if 语句和switch 语句实现。
If 语句x=input('请输入分数:')if(x<=100&x>=90)disp('A')elseif(x>=80&x<=89)disp('B')elseif(x>=70&x<=79)disp('C')elseif(x>=60&x<=69)disp('D')elseif(x<60)disp('E')end请输入分数:95x =95Aswitch语句c=input('请输入分数:')switch ccase num2cell(90:100)disp('A')case num2cell(80:89)disp('B')case num2cell(70:79)disp('C')case num2cell(60:69)disp('D')case num2cell(0:59)disp('E')end请输入分数:83c =83Bb)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
Matlab 上机实验答案实验一MATLAB运算基础1.先求以下表达式的值,尔后显示 MATLAB 工作空间的使用状况并保存所有变量。
2sin850(1)z11 e2>>z1=2*sin(85*pi/180)/(1+exp(2)) z1 =(2) z21 1 x2212iln( x) ,此中x5 2>>x=[2 1+2i;-0.45 5];>>z2=1/2*log(x+sqrt(1+x^2))z2 =(3) z3e0.3a e sin(a0.3) ln0.3 a22>>a=-3.0:0.1:3.0;>>z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2) (>> z33=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2)可以考据 z3==z33 ,能否都为 1)z3 =Columns 1 through 5Columns 6 through 10Columns 11 through 15Columns 16 through 20 Columns 21 through 25 Columns 26 through 30 Columns 31 through 35 Columns 36 through 40Columns 41 through 45 Columns 46 through 50 Columns 51 through 55 Columns 56 through 60Column 61t 20 t1(4) z4t 211t 2 ,此中t 22t 1 2t3>>t=0:0.5:2.5;>>z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3).*(t.^2-2.*t+1)z4 =002.已知:12344131A 34787, B2033657327求以下表达式的值:(1)A+6*B 和 A-B+I (此中 I 为单位矩阵)(2)A*B 和 A.*B(3)A^3 和 A.^3(4)A/B 及 B\A(5) [A,B] 和[A([1,3],:);B^2]>>A=[12 34 -4;34 7 87;3 65 7];>>B=[1 3 -1; 2 0 3;3 -2 7];>>A+6*Bans =1852-10467105215349>>I=eye(3);>>A-B+Ians =1231-3328840671(2)>> A*Bans =684462309-72596154-5241>>A.*Bans =1210246802619-13049(3)>> A^3ans =372262338244860424737014918860076678688454142118820>>A.^3ans =172839304-643930434365850327274625343 (4)>> A/Bans =>>B\Aans =(5)>>[A,B]ans =1234-413-13478720336573-27 >>[A([1,3],:);B^2]ans =1234-436574511101920-5403.设有矩阵 A和B1234530166789101769A 1112131415, B02341617181920970212223242541311(1)求它们的乘积 C。
《C语言程序设计》实验指导书课程编号:课程名称:C语言程序设计•实验学时:44一、本实验课的性质、任务与tl的本实验课目的是使学生掌握C语言编程的常用方法,熟悉该语言中的语法、词法规则,为以后进行软件开发和学习后继专业课程打下基础。
通过学习能够运用c语言中的各个知识点编写能完成一定功能的程序。
训练学生进行复杂程序设计的技能和培养良好程序设计的习惯,其重要程度决不亚于知识的传授。
把高级语言的学习与程序设计.上机实践紧密地结合起来,以提高学生能灵活运用新的知识分析问题和解决问题的能力。
二、本实验课所依据的课程基本理论本实验课基于C语言的语法和词法规则、数据的表示及算法的处理,而语法及算法正是高级语言程序设计的主要研究对象。
《C语言程序设计》的主要任务是:C语言是一种应用广泛结构化程序设计语言,本课程介绍c语言的基本概念.基本语法和编程方法,重点描述C语言的结构化的特征,并通过本课程的学习,使学生掌握一定的结构化程序设计的知识,以及用C语言编写程序的能力。
三、实验类型与要求在做每个实验之前,让学生对本次实验相关的内容进行预习、算法设计、流程图的设计、编写程序,做好实验的准备工作;写出预习报告,画出流程图, 要求独立完成。
说明:1>实验类型:设计性;2、实验要求:必做。
四、每组人数与实验学时数每组1人,实验学时数44学时。
五、考核方式与评分办法实验总成绩二出勤情况"0%+实验报告*20%+平时*30%+实验表现*40%六、本实验课配套教材或实验指导书谭浩强.C程序设计.北京:清华大学出版社,2006年3月第3版谭浩强.C程序设计题解与上机指导.北京:清华大学出版社,2006年3月第3版谭浩强.C程序设计试题汇编.北京:清华大学出版社,2006年3月第2版夏宽理.C语言程序设计.北京:中国铁道出版社,2006年2月第1版夏宽理.C语言程序设计上机指导与习题解答.北京:中国铁道出版社,2006年2月第1 版王士元・C高级实用程序设计.北京:清华大学出版社,1996年1月第1版七、实验报告要求在机器上交作业,每次实验成绩分为优、良、及格、不及格,未参加的为0分。
《程序设计基础》课程标准课程编号:030501ZB适用专业:计算机、电子、电气课程类型:专业基础课课程性质:必修课课程学时:60 课程学分:4一、课程定位本课程是计算机、嵌入式、电子以及电气专业的一门专业基础课程,也是其它相关专业研究计算机控制以及嵌入式、物联网技术等的一门基础和工具课程。
本课程的主要任务是使学生掌握模块化、结构化编程的基本思想,学会使用C语言编制简单的应用程序,解决一般性应用问题,并有一定的上机操作及调试程序能力。
本课程的先导课程为计算机信息基础,后续课程为android、软件工程、单片机、嵌入式开发技术。
通过掌握C语言的各种语法、数组、函数、位运算等知识,为后续课程奠定语言基础。
二、课程目标1. 能力目标(1)能用C语言进行结构化的程序设计;(2)能用C语言解决一维数据的存储;(3)能用C语言解决库函数及自定义函数的调用;(4)能用C语言解决二进制数据的位运算。
2. 知识目标(1)理解模块化、结构化程序设计思想;(2)掌握C语言的数据类型、语句格式、程序设计结构等基本内容;(3)掌握C语言的数组、函数、位运算等基本内容;(4)熟悉C语言的环境和常规调试方法。
3.素质目标(1)初步具备复用性设计、模块化思维能力;(2)具有热爱科学,团队意识、创新意识和创新精神;(3)具有规范化的代码编写和文档书写习惯;(4)加强职业道德意识;三、课程内容与学时分配四、教学设计1.整体教学设计以结构化程序设计为框架,首先,以顺序结构、选择结构、循环结构为核心,突出程序设计的基本理念及技能,其次,采用项目牵引的方法,让学生理解和学习数组、函数和位运算等知识,最终的目的是使学生能应用C语言程序解决实际问题。
教学过程中,通过分组讨论、知识问答、单元测试等教学活动,课外,通过第二课堂、兴趣小组、技能培训等多种途径,并且充分开发学习资源,包括PPT、动画、在线课程等,给学生提供丰富的学习机会。
教学方法主要采用知识讲授法、引导启发法、案例教学等方法,每章配有实验课,让学生消化吸收理论知识,进一步提高编程水平。
《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。