《算法设计综合实验》教案课件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《算法设计综合实验》教案

统计与应用数学学院

2012年5月11日制

实验一数据类型、运算符和表达式

实验目的:

1、掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法;

2、掌握不同的数据类型之间赋值的规律;

3、学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加和自减运算符的使用;

4、学会使用赋值运算符及复合赋值运算符;

5、进一步熟悉C程序的编辑、编译、连接和运行的过程。

实验环境:

Windows操作系统、Visual C++6.0

实验学时:2学时;

实验内容:

1、整型变量实型变量、字符型变量的定义与输出,赋整型常量值时的情形,以及给整型变量赋字符常量值时的情形;

2、各类数值型数据间的混合运算;

3、要将“China”译成密码,密码规律是:用原来的字母后面第4各字母代替原来的字母。例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译成“Glmre”。请编一程序,用赋初值的方法使c1、c2、c3、c

4、c5这5个变量的值分别为’C’、’h’、’i’、’n’、’a’,经过运算,使c1、c2、c3、c4、c5分别变为’G’、’l’、’m’、’r’、’e’,并输出。

实验二顺序结构程序设计

实验目的:

1、掌握C语言中赋值语句的使用方法;

2、掌握各种类型数据的输入输出方法,能正确使用各种格式转换符;

3、学习调试程序。

实验环境:

Windows 操作系统、Visual C++6.0

实验学时:2学时;

实验内容:

1、掌握各种格式转换符的正确使用方法;

2、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果。输出时要有文字说明,取小数点后两位数字。

3、编程序:用getchar 函数读入两个字符给c1、c2,然后分别用putchar 函数和printf 函数输出这两个字符。上机运行程序,比较用printf 和putchar 函数输出字符的特点。

实验三 选择结构程序设计

实验目的:

1、了解C 语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。

2、 学会正确使用逻辑运算符和逻辑表达式。

3、熟练掌握if 语句和switch 语句。

4、学习调试程序。

实验环境:

Windows 操作系统、Visual C++6.0

实验学时:2学时;

实验内容:

1、有一函数

⎪⎩⎪⎨⎧≥<≤<--=)10()

101()1(11312x x x x x x y

用scanf 函数输入x 的值,求y 值(运行程序,输入x 的值,检查输出的y 值是否正确)。

2、给出一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E ,90分以上为A ,80~89分为B ,70~79分为C ,60~69分为D ,60分以下为E 。

要求:(1)事先编好程序,要求用switch 语句来实现,运行程序,并检查输出结果是否正确。(2)修改程序,当输入分数为负值,或大于100时,通知用户“输入数据错误”,程序结束。(3)修改程序,要求用if 结构来实现,运行程序,并检查输出结果是否正确。

3、给一个不多于5位的正整数,要求求出它是几位数,打印出每一位数字,并按逆序打印出各位数字。

4、输入4个整数,要求按由小到大的顺序输出。

5、求方程02

=++c bx ax 的解。 实验四 循环结构程序设计

实验目的:

1、熟练掌握用while 语句,do-while 语句;

2、掌握for 语句实现循环的方法,掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等);

3、掌握break 语句和continue 语句的使用;

4、掌握循环结构程序中典型的算法;

5、进一步学习调试程序;

实验环境:

Windows 操作系统、Visual C++6.0

实验学时:3学时;

实验内容:

1、编程计算1!+2!+3!+……n!的值,其中,n 值由键盘输入。

2、输入一行字符,分别统计出其中的大小写字母、空格、数字和其他字符的个数。

3、输入两个正整数m 和n ,求它们的最大公约数和最小公倍数;

4、猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上再吃时,见只剩下一个桃子了。求第一天共摘了多少桃子。

5、求s=a+aa+aaa+…+aa …a 之值,其中a 是一个数字,n 表示a 的位数;

6、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13……,求出这个数列的前20项之和。

实验五数组

实验目的:

1、掌握一维数组和多维数组的定义、赋值和输入输出的方法;

2、掌握两种排序算法:冒泡法排序和选择法排序;

3、掌握字符数组和字符串的使用;

4、掌握字符串处理函数的应用;

实验环境:

Windows操作系统、Visual C++6.0

实验学时:5学时;

实验内容:

1、求两个2×3和3×2的矩阵之积,并把结果显示出来。

2、10个人的成绩存放在score数组中,编写程序,将不及格的人数,最低分和最高分显示出来。

3、任意给定三个字符串,编写程序:用两种方法给出最大的一个。

4、编写程序,实现矩阵(5行6列)的转置(即行列互换)。

5、输出杨辉三角(要求输出10行)。

6、编程:将一个十进制整数转换成二进制数。

7、将两个字符串连接起来,用strcat函数和不用strcat函数两种情形;

实验六函数

实验目的:

1、掌握定义函数的方法;

2、掌握函数实参与形参的对应关系,以及“值传递”的方式。

3、掌握函数的嵌套调用和递归调用的方法;

4、掌握全局变量和局部变量、动态变量、静态变量的概念和使用方法;

实验环境:

Windows操作系统、Visual C++6.0

相关文档
最新文档