《实验教学的目的和要求》由会员分享,可在线阅读,更多相关《实验教学的目的和要求(4页珍藏版)》请在金锄头文库上搜索。
1、一一. . 实验教学的目的和要求:实验教学的目的和要求:通过实验,让学生全面掌握高级语言程序设计的思想与方法,掌握 C 语言的特点,C语言的语法规则,C 语言的数据类型、表达式及控制流程;通过编程,提高程序设计能力,使学生达到能够熟练使用 C 语言解决常见实际问题的能力,为全面精通高级语言程序打下基础。实验要求:(1)复习和掌握与本实验有关的教学内容。(2)上机实验前应事先做好准备工作,课下编写程序,以提高上机实验的效率。(3)对运行中可能出现的问题应事先作出估计,对程序中自己有疑问的地方作出标记,并上机进行验证。(4)准备好调试和运行时所需的数据。二、实验项目的内容和要求二、实验项目的内容和
2、要求实验一:实验一:C C 语言的运行环境语言的运行环境内容:(1)熟悉 Turbo C 集成环境。(2)输入并运行一个简单的 C 程序。(3)运行一个自己编写的 C 程序。要求:熟悉 C 语言的编程环境,了解在该系统上如何编辑、编译、连接和运行一个 C程序,通过运行简单的 C 程序,了解 C 程序的特点。实验二:数据类型、运算符和表达式实验二:数据类型、运算符和表达式内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行,验证程序的运行结果。(1)输入并运行下面的程序。main()char c1,c2;c1=a; c2=b;printf(“%c %cn”,c1,c2);(2)输入并
3、运行下面的程序。main()char c1=a,c2=b,c3=c,c4=101,c5=116;printf(“a%c b%ctc%ctabcn”,c1,c2,c3);printf(“tb%c %cn”,c4,c5);(3)输入并运行下面的程序。main() int a,b;unsigned int c,d;long e,f;a=100; b=-100; e=50000; f=32767;c=a; d=b;printf(“%d,%dn”,a,b);printf(“%u,%un”,a,b);printf(“%u,%un”,c,d);c=a=e; d=b=f;printf(“%d,%dn”,a,b
4、);printf(“%u,%un”,c,d);(4) 输入并运行下面的程序。main()int i,j,m,n;i=8; j=10;m=+i; n=j+;printf(“%d,%d,%d,%dn”,i,j,m,n);要求:(1)掌握 C 语言数据类型,熟悉如何定义一个整型、字符性和实型的变量,以及对它们赋值的方法。(2)掌握不同的类型数据之间赋值的规律。(3)学会使用 C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加(+)和自减(-)运算符的使用。(4)进一步熟悉 C 程序的编辑、编译、连接和运行的过程。实验三:最简单的实验三:最简单的 C C 程序设计程序设计内容:(1)自己编写
5、一个小程序,用 scanf 函数和 printf 函数实现数据的输入和输出。(2)编写下面的程序并上机运行。设圆半径 r=1.5,圆柱高 h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用 scanf 输入数据,输出计算结果。 (取小数点后两位数字) 。(3)编程序,用 getchar 函数读入两个字符给 c1、c2,然后分别用 putchar 函数和printf 函数输出这两个字符。要求:(1)掌握 C 语言中使用最多的一种语句赋值语句的使用方法。(2)掌握各种数据类型的输入输出的方法,能正确使用各种格式转换符。实验四:选择结构程序设计实验四:选择结构程序设计内容:选择结构的程序设
6、计练习,根据下列给定的问题编写程序并上机调试运行。(1)给出一个百分制成绩,要求输出成绩等级 A、B、C、D、E。90 分以上为A,8089 分为 B,7079 分为 C,6069 分为 D,60 分以下为 E。(2)给出一个不多于 5 位的正整数,要求求出它是几位数;分别打印出每一位数字;按逆序打印出各位数字,例如原数为 321,应输出 123。(3)输入 4 个整数,要求按由小到大的顺序输出。 要求:(1)了解 C 语言表示逻辑量的方法(以 0 代表“假” ,以非 0 代表“真” ) 。(2)学会正确使用逻辑运算符和逻辑表达式。(3)熟练掌握 if 语句和 switch 语句。(4)结合程
7、序掌握一些简单的算法。实验五:循环结构程序设计实验五:循环结构程序设计内容:循环结构的程序设计练习,根据下列给定的问题编写程序并上机调试运行。(1)输入两个正整数 m 和 n,求它们的最大公约数和最小公倍数。(2)输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。(3)用牛顿迭代法求方程 2x3-4x2+3x-6=0 在 1.5 附近的根。(4)猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,见只剩一个桃子了。求第一天共摘了多少桃
8、子。要求:(1)熟练掌握用 while 语句,dowhile 语句和 for 语句实现循环的方法;(2)掌握在程序设计中用循环方法实现一些常用算法(如穷举、迭代、递推等) ;(3)进一步学习调试程序。实验六:数组实验六:数组内容:编程,然后上机输入程序并调试运行程序。(1)输入 10 个数,输出最大值、最小值以及平均值(用数组实现) 。(2) 输入 4 名学生的姓名及三门课成绩,打印学生成绩表。 (姓名、三门课成绩、平均分)(3)有 15 个数存放在一维数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数” 。(4)将两个字符串连接起来,不要用
9、 strcat 函数。要求:(1)掌握一维数组和二维数组的定义、赋值和输入输出的方法;(2)掌握字符数组和字符串函数的使用;(3)掌握与数组有关的算法。实验七:函数实验七:函数内容:编程并上机调试运行。(1)编写程序,通过函数调用方式计算 y=|x|。(2)编写程序,通过函数调用方式删除字符串中的非英文字符,在主函数中输入字符串以及输出删除后的字符串结果。(3)n 个人按年龄从小到大站成一排,编号依次为 1 到 n ,年龄都相差 2 岁,且第一个人的年龄是 10 岁,问第 n 个的年龄是多大?要求 通过函数递归调用方式实现 n 的值从键盘输入。(4)求两个整数的最大公约数和最小公倍数。用一个函
10、数求最大公约数,用另一个函数根据求出的最大公约数求最小公倍数。要求:不用全局变量,分别用两个函数求最大公约数和最小公倍数。两个整数在主函数中输入,并传送给函数 1,求出的最大公约数返回主函数,然后再与两个整数一起作为实参传递给函数 2,以求出最小公倍数,再返回到主函数输出最大公约数和最小公倍数。用全局变量的方法,分别用两个函数求最大公约数与最小公倍数,但其值不由函数带回。将最大公约数和最小公倍数都设为全局变量,在主函数中输出它们的值。要求:(1)掌握定义函数的方法;(2)掌握函数实参与形参的对应关系以及“值传递”的方式;(3)掌握函数的嵌套调用和递归调用的方法;(4)掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。