上机实验含作业总的目的要求和评分标准样本Word文档格式.docx
《上机实验含作业总的目的要求和评分标准样本Word文档格式.docx》由会员分享,可在线阅读,更多相关《上机实验含作业总的目的要求和评分标准样本Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
这样的学习才会有真正的收获。
实验目的可归纳如下:
⒈验证自己已建立起来的概念或所编写的程序是否正确;
⒉加深对课堂所学内容的理解和语法规则的记忆;
⒊理解和掌握运用计算机高级语言进行编程的思想方法;
⒋掌握常见算法的设计与应用实现;
⒌熟悉TurboC2.0程序开发环境,掌握C程序常见的调试手段;
⒍学会上机调试程序的方法,不断积累调试经验,提高排错能力;
⒎使自己具有独立的应用编程和熟练的程序调试能力。
二、要求:
⒈做好每一次上机前的准备以提高上机效率:
①预先认真阅读相关实验内容,做到心中有明确的目的要求和任务,要有备而来;
②按照实验内容规定的习题题目,事先在实验预习报告上编写好源程序及运行程序所需的典型数据,并经人工静态检查认为无误;
手编程序应书写整齐,应在每个题目之间留出一定的空间,以备记录上机调试情况和运行结果等;
对程序中自己有疑问的地方,应作出记号,以便上机时给以注意。
③将想要上机验证的问题草拟提纲;
制定一个简捷的程序调试计划。
⒉上机时输入和调试自己所编写的程序。
在使用键盘时,应采用正确的指法击键,为今后正确使用键盘打下基础;
应该一人一组,尽量独立思考,上机过程中出现的问题,除了是系统的问题外,一般应自己独立处理,特别对”出错信息”,应善于自己分析判断,并充分利用开发工具提供的错误信息和调试手段解决出现的问题,及时修改与完善源程序,随时记录有价值的内容。
解决问题是学习调试程序的良好机会。
初学者切不可不编程序或抄别人的程序去上机,应从一开始就养成严谨的科学作风。
⒊程序调试经过后,应运行程序并根据事先准备的典型数据验证结果,在运行时要注意在输入不同数据时所得到的不同结果(如解一元二次方程上时,不同的a、b、c组合应得到实根、复根的不同结果)。
此时应运行几次,分别检查在不同情况下程序是否正确。
⒋为便于教师、助教检查和以后复习,请不要删除已经过的程序,包括有问题待答疑的程序,应保存在自己的工作目录内。
源程序名应能反映哪一次实验的哪一个题目,例如:
若已完成第一次实验第二道程序题的编写且学生名称为李明,则完成后的源文件应命名为LM_1_2.C,其中LM是姓名首字母的大写,1表示第一次实验,2表示第二道程序题,下划线”_”不可丢失。
若有未完成调试的源程序,能够作存盘保存处理,待课外继续完成。
⒌在实验课堂上至少要完成每次实验任务的前三道程序题,能够课后继续完成其余题目,但每次实验任务中所有的程序题都必须写在实验报告上并递交。
三、实验报告内容:
上机结束后,应整理出实验报告,实验报告可采用英文或中文书写,每份实验报告总分100分,实验报告必须在该次实验后下一周星期二下午5、6节课前交到学习委员处,由学习委员按学号整理好,在上课前交到讲台上。
实验报告应包括以下内容:
⒈实验目的(10分)
⒉实验题目(10分)
⒊程序清单(50分)(此部分要求:
①含算法的伪代码描述或流程图描述;
②必须包括注释。
)
⒋运行结果(10分)(必须是程序清单所对应的输入、数据和打印输出的结果);
⒌调试分析和体会(20分)(这是实验报告中最重要的一项,也是最容忽视的一项。
实验过程中大量的工作是程序调试,在调试过程中会遇到各种各样的问题,每解决一个问题就能积累一点经验,提高编程的能力。
因此,对实验的总结,最重要的是程序调试经验的总结。
调试分析也包括对结果的分析。
体会主要是指经过本次实验是否达到了实验目的,有那些基本概念得到了澄清等。
四、实验纪律(参照学生守则):
⒈无故缺勤实验一次,取消期末考试的资格;
⒉在实验进行中,累计2次玩游戏者,取消期末考试的资格;
⒊因故缺勤实验一次,必须补做,补交实验报告。
Lab1 SequenceStructure
上机前的预习:
在实验预习报告上画好流程图,并编写好源程序及运行程序所需的典型数据。
⒈ 在自己的系统上运行”Hello,World”,再让程序遗漏一些部分,观察出现的错误信息。
⒉ 调试并改正下列程序中的错误。
该程序能够计算某个数x的平方,并赋值给y,且分别以”y=x*x”和”x*x=y”的形式输出x和y的值。
要求记录错误信息,说明错误原因和改正方法,最后写正确的程序。
#include<
stdio>
voidmain(void)
{
intx,y;
y=x*x
printf(”%d=%d*%d”,x);
printf(”d*%d=%d,y);
}
⒊ 输入两个数,交换它们的值。
⒋ 求摄氏温度26℃对应的华氏温度。
计算公式为,其中,c表示摄氏温度;
f表示华氏温度。
⒌ 输入某员工的基本工资(以元为单位,工资为整数值),如果她的住房补贴是基本工资的20%,岗位补贴是基本工资的40%,计算该员工的总工资。
Lab2 SelectionStructure
⒈ 输入一个年份,判断其是否为闰年。
⒉ 假设现在90号汽油6.95元/升、93号汽油7.44元/升、97号汽油7.93元/升。
为吸引顾客,某自动加油站推出了”自助服务”和”协助服务”两个服务等级,分别可得到5%和3%的折扣。
请编写程序,输入顾客的加油量a,汽油品种b(90、93或97)和服务类型c(m为自助服务,e为协助服务),计算并输出应付款(保留小数点后2位)。
⒊ 给一个不多于5位的正整数,求出它是几位数,并计算组成该整数的每位上的数字的和。
⒋ 输入三角形的三边a,b,c,若能构成三角形,输出YES,否则输出NO。
⒌ 输入某学生语文课程的成绩,输出该成绩的等级。
判断规则为:
如果成绩在90-100的范围内,则等级为A;
若成绩在80-89的范围内,则等级为B;
若成绩在70-79的范围内,则等级为C;
若成绩在60-69的范围内,则等级为D;
若少于60分,则等级为F。
(要求:
用switch语句实现。
Lab3 RepetitionStructure
⒈ 从500开始,求被3、5、7除余数均为2的前50个数。
⒉ 打印形状为正方形和直角三角形的乘法九九表。
⒊ 由键盘输入一个正整数,判断它是否为素数(只能被1和自身整除的数)。
⒋ 输入一个正整数n,输出的前n项和之和,保留小数点2位。
⒌ 将一笔零钱(大于8分,小于1元,精确到分)换算成1分、2分和5分的硬币组合。
输入金额,输出共有多少种换法及换算的方案。
⒍ 编写程序输出以下的图形:
ABCD
EFG
HI
J
Lab4 Function(PartⅠ)
要求:
从本次实验开始,每一个功能模块都必须用一个函数来实现。
⒈ 输入一批正整数(以0或负数为结束标志),求其中所有奇数的和。
定义和调用函数even(n)判断整数的奇偶性,当n为偶数时返回1,否则返回0。
⒉ 输入两个正整数m和n(1≤m,n≤1000),输出m~n之间的所有满足各位数字的立方和等于它本身的数(如153=13+53+33)。
要求定义并调用函数isnumber(number)判断number的各位数字之立方和是否等于它本身。
⒊ 随机产生50个200至500之间的整数,输出所有的整数,判断每个整数是否为素数;
若是素数,则在输出整数时,用*标记。
要求每行输出10个数。
判断一个整数是否为素数,必须用自定义的函数实现。
⒋ 给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留2位小数)。
定义和调用函数dist(x1,y1,x2,y2)计算两点间的距离。
⒌ 输入两个正整数,求其最大公约数和最小公倍数。
求最小公约数必须用自定义的函数实现。
Lab5 Function(PartⅡ)
⒈ 编程计算Xn(要求:
用递归函数)。
⒉ 编程计算Ackermann函数Ack(m,n)(要求:
对于m≥0,n≥0,Ack(m,n)定义如下:
Ack(0,n)=n+1
Ack(m,0)=Ack(m-1,1)
Ack(m,n)=Ack((m-1),Ack(m,n-1))
⒊写出下列程序的输出结果
(1)intx1=30,x2=40;
voidsub(intx,inty)
x1=x
;
x=y;
y=x1;
intmain(void)
intx3=10,x4=20;
sub(x3,x4);
sub(x2,x1);
printf(”%d,%d,%d,%d\n”,x3,x4,x1,x2);
return0;
(2)
intx=3;
voidincre()
{
staticintx=1;
x*=x+1;
printf(”%d”,x);
}
intmain(void)
inti;
for(i=1,i<
x,i++)incre();
return0;
Lab 6Array(PartⅠ)
⒈ 产生1000—5000之间的100个随机整数,找出其中的素数,用冒泡法对找出的素数进行排序。
请将产生的随机数、找出的素数和排序后的素数分别输出。
⒉ 有一个按非递增排列好的数组,今输入一个数,要求按原来排序的规律将它插入到数组中。
⒊ 计算以下整数的标准差和平均值。
-6,-12,8,13