高级语言程序设计基础实验教案

发布 2021-04-24 16:39:28 阅读 1216

主讲教师:张顺利。

2023年10月。

实验目的。1.熟悉vc++开发环境,掌握c语言程序的开发过程。

2.掌握c程序的基本格式与规范,学会编写简单的c程序。

3.掌握利用getchar( )putchar( )printf( )和scanf( )等函数进行输入输出。

实验内容。1.输入三角形的三边长,求三角形的面积。

提示:面积公式为,其中。

2.将china译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母a后面第四个字母是e,用e代替a。编写程序,输入china,对应输出为glmre。

提示:输入输出用getchar( )和putchar( )

3.当n为152时,分别求出n的个位数字、十位数字和百位数字。

4.求方程的根。、、由键盘输入,设。

5.从键盘输入一个大写字母,要求改用小写字母输出。

6.求华氏温度100°f对应的摄氏温度。计算公式如下,其中:表示摄氏温度,表示华氏温度。

7.当x=3时,计算的值。提示:pow(double x, double y)。

8.输入圆柱体的底面圆半径和高,输出圆柱体的表面积和体积,取小数点后2位数字。

实验目的。1.掌握运算符及表达式的使用。

2.掌握选择语句的使用。

3.掌握循环语句的使用。

实验内容。1.计算级数,最后一项的绝对值小于10-8为止。

2.一个数如果恰好等于它的因子之和,则称该数为“完数”。如:6的因子为,而6=1+2+3,则6是个“完数”。编程求出1000之内的所有完数。

3.有数列:2/1,3/2,5/3,8/5, 13/8, 21/13,….求出数列的前20项和。

4.给定一个在整数m,判断其是否为素数。

5.从键盘上输入10个整数,若是正整数则求和,若是负整数则不进行计算,继续输入数据,若输入0则终止程序。

6.用公式求π的近似值,直到最后一项的绝对值小于10-8为止。

7. 输出1~200之间不能被3整除的数,要求每行输出10个数。

8.编程求1!+2!+3!+4!+…15!。

9.编程求100到999之间全部的水仙花数。所谓水仙花数是指一个三位数,其各位数字立方的和等于该数。如:153=1*1*1+5*5*5+3*3*3,153就是一个水仙花数。

10.给一个百分制成绩,要求输出成绩等级’a’、’b’、’c’、’d’、’e’。90分以上为’a’,8089分为’b’, 7079为’ c’, 6069为’ d’,60分以下为’e’。

11.输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

12.输入一个不多于5位的正整数,要求:①求出它是几位数;②分别打印出每一位数字;③按逆序打印出各位数字。

13.若口袋中放有12个球,其中3红,3白和6黑,问从中任取8个共有多少种不同的取法?

14.编程实现一个简单的运算器(保留两位小数点),如果由键盘输入10+50,计算机可以输出结果60.00;如果输入8*6,计算机输出48.00;如果输入20/4,计算机输出5.

00;如果输入8-6,计算机输出2.00。

15.打印杨辉三角形。

当n =5时。

实验目的。1.掌握函数的定义和函数值返回的方法;

2.掌握函数的调用方法以及参数的传递方式;

3.掌握递归函数的定义及使用。

实验内容。1.编写一函数,用来实现ex的计算。。

2.编写函数求s=a+aa+aaa+aaaa+aa….a,其中a是一个数字。

3.编程输出斐波那契数列的前n项。如1,1,2,3,5,8,13,21,34………

4.编写两个函数,输入两个正整数m和n,分别求其最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。

5.编写一函数,输入年份,判断是否为闰年,若是返回1,否则返回0。

6.编写递归调用函数,实现由键盘输入一个正整数(不大于100000000),输出其对应的二进制数(原码表示)。

7.编写一函数,给出年、月、日,计算该日是该年的第几天。

实验目的。1.掌握一维数组和二维数组的定义、数组元素的引用、初始化和输入输出方法;

2.掌握字符数组和字符串处理函数的使用;

3.掌握与数组有关的算法(特别是排序算法)。

实验内容。1.从键盘上任意输入n个整数,用冒泡法按从小到大的排序,并在屏幕上显示出来。

2.某班有5个学生,三门课。分别编写3个函数实现以下要求:

1) 求各门课的平均分;

2) 找出有两门以上不及格的学生,并输出其学号和不及格课程的成绩;

3) 找出三门课平均成绩在85-90分的学生,并输出其学号和姓名。

主程序输入5个学生的成绩,然后调用上述函数输出结果。

3.编程序找出一个 5 × 4 矩阵的鞍点。鞍点即矩阵中的某个元素符合如下条件:在其所在行最大,同时在其所在列是最小,当然一个矩阵可能也没有鞍点。

4.输入5个国家的名称,按字母顺序排列输出。

5.编程实现矩阵(4行4列)的转置。

6.写一通用函数my_strlen(),用来求字符串的长度。

7.编程序,将两个字符串连接起来,不要用strcat函数。

8.由键盘输入两个位数很长的整数(一行一个数,每个数最长不超过80位),试计算并输出这两个数的和。

例如:输入。

输出。实验目的。1.掌握指针的概念、定义和运算;

2.掌握用指针访问变量的方法;

3.掌握用指针访问数组的方法;

4.掌握用指针访问字符串的方法;

5.掌握用指针作为函数参数的使用方法。

实验内容。1.编写一个函数swap,用来实现交换两个内存变量a和b的值。要求用指针变量编写程序。

2.将数组中的数进行排序,要求用指针变量编写程序。

3.编写一函数sort,完成对n个字符串的降序排序,然后在main函数中调用sort对“beijing”,“shenzhen”,“nanjing”,“dalian”,“shanghai”和“qingdao”这六个字符串排序,要求用指针数组表示这六个字符串。

4.编写函数实现矩阵(4行4列)的转置。要求函数的实参为数组名,形参为指针形式。

5.写一通用函数用来实现strcmp()的功能。

6.编写程序用来实现任意函数的定积分计算。

实验目的。1.掌握结构体类型的定义、结构体变量的初始化及成员的引用;

2.掌握运算符“.”和“->的应用。

3.掌握链表的常用操作,包括创建、显示、添加等。

实验内容。1.有5个学生,每个学生的数据信息包括学号、姓名、3门课的成绩,从键盘输入5个学生的信息,要求输出3门课程的总的平均成绩,以及最高分的学生的信息。

2.建立一个链表,每个节点包括:学号、姓名、性别、年龄。编写一个insert函数,功能是插入新结点,按学号顺序插入链表。

编写一个delete函数,功能是删除一个结点,输入一个学号,删除该学号所对应的学生的信息。

3.有结构体类型定义,struct student

long num; /学号*/

intscore; /成绩*/

struct student *next; /指针*/

编写程序,首先创建一个链表,然后实现链表节点的插入、链表的倒序、链表的合并以及将链表中各结点按学号由小到大进行排序等操作。

4.建立一个链表,每个结点包括:学号、姓名、性别、年龄,输入一个学号,如果链表中的结点包括该学号,则输出该结点内容后,并将其结点删去。

实验目的 1.掌握文件和文件指针的概念以及文件指针的定义方法;

2.掌握文件的打开与关闭。

3.熟悉使用各种文件操作函数对文件进行操作。

实验内容。1.有5个学生,每个学生有3门课程的成绩,从键盘输入学生数据(包括学号、姓名、3门课程成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件“stud”中。

2. 在当前目录中存在文件名为""的文本文件,要求使用fopen 函数命令打开该文件,读出里面的所有字符,遇到大写字母的,将其变为小写字母,其它字符不变,最后将所有字符按顺序在屏幕上输出。

3.从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以“!”结束。

4.有一磁盘文件“employee”,内存放职工的数据。每个职工的数据包括职工姓名、职工号、姓名、年龄、住址、工资、文化程度。今要求将职工名、工资的信息单独抽出来另建一个简明的职工工资文件。

高级语言程序设计实验九

实验项目编号 2174000409 实验项目名称 结构体程序设计。学时 2每组人数 1 实验目的 掌握结构体变量的定义及使用,综合运用结构体和数组进行程序设计,并能运用结构体数组解决实际应用问题。实验要求 对下面的实验题设计其算法并上机调试。1 有一学生情况如下表所示。编制一个c程序,用冒泡法对该学...

高级语言程序设计实验四

学时 2 每组人数 1 实验目的 掌握一维数组与二维数组的定义及其元素的引用方法 深刻体会数组与循环的关系 掌握利用一维数组和二维数组实现一些常用算法的编程技巧 进一步掌握动态调试的基本技能。实验要求 给下面的实验题设计算法并上机调试。1 将矩阵 4 5 中值 行中所有数的和 为最大的那一行元素与首...

高级语言程序设计实验七

实验项目编号 2174000406 实验项目名称 模块化程序设计 1 学时 2每组人数 1 实验目的 掌握函数的定义及其调用形式,深刻体会全局变量和局部变量 动态变量与静态变量的概念和使用方法,熟练掌握模块间数据传递的方式。实验要求 对下面的实验题设计其算法并上机调试。1 求两整数的最公约数和最小公...