《高级语言程序设计》一教学大纲Word文档格式.docx
《《高级语言程序设计》一教学大纲Word文档格式.docx》由会员分享,可在线阅读,更多相关《《高级语言程序设计》一教学大纲Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
教学内容:
C语言程序的结构;
运行C语言的步骤与方法;
C语言的运行环境。
教学要求:
了解C语言的发展、特点及程序组成结构,了解C程序编译和连接过程,熟练掌握C程序上机步骤。
2.算法(6学时)
算法的特性,自然语言、传统流程图、N-S流程图、伪代码、计算机语言等表示算法;
结构化程序设计方法。
掌握算法的基本概念与特征,N-S流程图、常用算法思想。
3.顺序程序设计(12学时)
数据类型,常量,变量,运算符和表达式,C语句的种类,赋值语句,printf函数,scanf函数,字符数据的输入输出。
掌握变量定义规则,常用数据类型的常量表示;
掌握运算符的优先级和结合性,赋值语句;
掌握格式输入输出函数的形式;
掌握字符数据的输入输出格式。
4.选择结构程序设计(12学时)
关系运算符和关系表达式,逻辑运算符和逻辑表达式,条件运算符和条件表达式,if语句以及嵌套,switch语句。
掌握关系表达式和关系运算符,逻辑运算符和逻辑表达式,条件运算符和条件表达式;
掌握if语句,if语句的嵌套,switch语句。
5.循环结构程序设计(12学时)
while语句,do…while语句,for语句,各循环的嵌套,break语句,continue语句。
了解程序设计中构成循环的方法,break、continue在循环语句中的作用;
掌握while语句,do…while语句,for语句的用法;
6.数组(14学时)
一维数组的定义,初始化和引用;
二维数组的定义,初始化和引用;
字符数组的定义,初始化,引用;
字符数组的输入输出;
字符串和字符串结束标志;
使用字符串处理函数。
掌握一维数组和二维数组的定义及引用,学会使用一维数组、二维数组编程;
掌握字符数组的定义与引用,字符串处理函数格式。
三、本课程与其它课程的联系与分工
本课程的先修课为大学计算机基础、高等数学,后继课程为数据结构、JAVA程序设计等。
四、推荐教材和参考书
[1]BrianW.Kernighan&
DennisM.Ritchie.TheCProgrammingLanguage(SecondEdition).机械工业出版社,2007.
[2]StephenA.Maguire.编程精粹:
编写高质量C语言代码(英文版).人民邮电出版社,2009.
[3]PeterPrinz&
TonyCrawford著.CinaNutshell.O’ReillyTaiwan公司译.北京:
机械工业出版社,2007.
[4]谭浩强著.C程序设计教程.北京:
清华大学出版社,2007
[5]SamuelP.Harbison,GuyL.SteeleJr.C:
AReferenceManual.机械工业出版社,2011.
[6]麦中凡.C++程序设计语言教程.北京航空航天大学出版社,2001.
《高级语言程序设计》
(一)实验课教学大纲
08402003课程性质:
非独立设课
实验学时:
30学分:
1
执笔人:
一、实验项目及目的
实验目的:
《高级语言程序设计》课程既要注重掌握理论方法又要注意实践,上机实验是该课程主要的实践环节,要求学生能使用VisualC++6.0独立调试、编译C++程序。
通过实验,加深对理论部分有关概念、理论的理解,为实际使用C语言编写系统、应用程序奠定良好的基础。
逐步培养学生面向对象程序设计的思想,为后继课程的开设打下良好的基础。
基本要求:
通过本课程的实验,使学生掌握C语言程序设计的基本思想,掌握顺序结构,选择结构、循环结构、数组的使用方法。
具有利用C语言编写程序处理简单问题的能力。
二、实验内容和学时分配
实验一熟悉VisualC++6.0工作环境(1学时)
1.了解VisualC++6.0的特点。
2.熟悉VisualC++6.0的开发环境。
3.学习用VisualC++6.0编写标准C程序。
实验内容:
1.启动VisualC++6.0创建一个项目。
2.创建一个简单的源程序。
3.编译、调试并运行。
实验二C语言的运行环境和运行过程(2学时)
1.了解程序调试的思想,能找出并改正C程序中的语法错误;
2.掌握C程序的编写方法;
3.能够编写简单的C程序。
1.调试示例,正确的在屏幕上输出一句“welcometoyou!
”。
2.编程求解三个数的最大值的程序。
3.上机运行验证教材上的相关例子。
实验三简单的C程序设计和基本数据处理
(一)(2学时)
1.掌握C语言的运算符和表达式的正确使用以及C语言的几种基本数据类型。
2.通过编程进一步理解和掌握运算符的确切含义和功能。
3.理解和掌握运算符与运算对象的关系,优先级和结合方向。
4.通过编程掌握C语言的几种基本数据类型,int、char、float、double,以及由这些基本数据类型构成的常量和变量的使用方法。
5.掌握数据类型之间的转换。
1.对错误的华氏法和摄氏法表示温度的程序进行调试。
2.假如我国国民生产总值的年增长率为10%,计算10年后我国国民生产总值与现在相比增长多少百分比。
计算公式为:
p=(1+r)^n,r为年增长率,n为年数,p为与现在相比的倍数。
3.购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。
设d=30000元,p为6000元,r为1%。
对求得的月份取小数点后一位,对第2位按四舍五入处理。
4.编写大小写字母的相互转化程序。
5.输入相关自增自减变量源程序,观察输出结果,并对输出结果作出合理的解释。
6.分析字符变量和整型变量的相互转化程序。
实验四简单的C程序设计和基本数据处理
(二)(4学时)
1.掌握基本输入输出函数的使用方法,包括printf()、scanf()、getchar()、putchar()。
2.掌握简单C程序的查错方法。
1.在键盘上如何用scanf函数输入这些数据,使a=3,b=7,x=8.5,y=71.82,c1=A,c2=a。
2.编程求解ax^2+bx+c=0方程的根。
3.请将“China”译成密码,密码规律是:
用原来的字母后面第4个字母代替原来的字母。
分别用putchar函数和printf函数输出这5个字符。
4.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
用scanf输入数据,输出时要求有文字说明,取小数点后2位数字。
5.用getchar函数读入两个字符给c1和c2,然后分别用putchar函数和printf函数输出这两个字符。
实验五选择结构程序设计
(一)(1学时)
1.了解C语句表示逻辑量的方法(以0代表“假”以1代表“真”)。
2.学会正确使用逻辑运算符和逻辑表达式。
3.熟练掌握if语句。
1.编写程序,输入任意三个数a,b,c,求其中最大的一个数。
提示:
运行时调试程序,包括设置断点、在Watch窗口设置变量的值等
2.编程,输入x,计算并输出下列分段函数f(x)的值。
如果x<
1,则输出y=x;
若1<
=x<
10,则输出y=2x-1;
若x>
=10,则输出y=3x-11。
该程序应该运行3次,每次测试一个分支,即分别输入每个分段中x的值.
实验六选择结构程序设计
(二)(2学时)
1.熟练掌握switch语句。
2.熟练掌握switch语句中break语句的作用。
1.编写程序,运输公司对用户计算运输费用。
路程(skm)越远,每吨·
千米运费越低。
标准如下:
s<
250没有折扣
250≤s<
5002%折扣
500≤s<
10005%折扣
1000≤s<
20008%折扣
2000≤s<
300010%折扣
3000≤s15%折扣
2.编程,把百分制成绩转换成5及记分制,要求用switch语句。
90分以上(包括90):
A
80至90分(包括80):
B
70至80分(包括70):
C
60至70分(包括60):
D
60分以下:
E
输入输出示例:
Inputscore:
86
86的等级为B
1)该程序应该运行6次,每次测试一种情况,即分别输入不同等级的成绩。
2)在switch中使用break语句
思考:
如何用if语句实现转换?
3.编程,给一个不多于5位的正整数,要求:
a)求出它是几位数
b)分别输出每一位数字
c)按逆序输出各位数字
4.编程,对2个整数进行乘、除和求余运算。
输入输出示例:
输入x运算符y:
21%8,21Mod8=5
实验七循环结构程序设计
(一)(4学时)
1.熟练while、do-while语句实现循环程序设计。
2.理解循环条件和循环体,以及while和do-while语句的相同及不同之处。
3.熟练for语句实现循环程序设计。
4.理解循环条件和循环体,for以及while和do-while语句的相同及不同之处。
5.掌握嵌套循环程序设计。
1.编写程序输入2个正整数,输出它们的最小公倍数和最大公约数。
2.编写程序输入1个正实数eps,计算并输出下式的值,直到最后一项的绝对值小于eps。
S=1-1/5+1/9-1/13+1/17-1/21+…,输入输出示例:
Inputeps:
0.00001,S=0.866977。
如果条件改为前后2项绝对值的差小于eps,如何编程。
3.编程,输入一个整数,求它的各位数字之和及位数。
例如123的各位数字之和是6,位数是3。
输入一个整数:
-12345,-12345有5位数,各位数字之和是15。
n表示一个整数,则n%10取个位数,n=n/10去掉个位数,组成一个新数。
如果要把每位数字转换为字符输出,如何编程。
4.编程输出如下4*5的矩阵:
12345
246810
3691215
48121620
5.编写程序,求1!
+2!
+……+20!
。
6.编程,输出所有的”水仙花数“,所谓”水仙花数“是指一个3位数,其各位数字立方和等于该数本身,例如:
153是一水仙花数,因为153=1^3+5^3+3^3。
7.编写程序。
一个球从100m高度自由落下,每次落地后反跳回原来高度的一半,再落下,再反弹。
求它在第10次落地时,共经过多少米,第10次反弹多高。
用for循环编写。
实验八循环结构程序设计
(二)(4学时)
1.熟练掌握循环程序设计,包括嵌套循环。
2.熟练掌握使用break、continue语句再循环程序设计中的实现。
3.熟练掌握vc++6.0的程序调试方法。
1.编程输入正整数的个数n,再输入n个正整数,判断它们是否为素数。
素数就是只能被1和自身整除的正整数,1不是素数,2是素数。
2.编程,输出101-115之间不能被3整除的数,每行输出5个。
要求用continue语句。
3.编程,输入一个正整数,再输入n个整数,输出其中的最大值,输入的每个数都再100-200之间,如果某个输入数不在100-200之间,则只处理在该数之前输入的数据。
4.编程。
猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
第2天早上将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半多一个。
到第10天早上想再吃的时候,见只剩下一个桃子了。
求第一天共摘了多少桃子?
5.编程,在100-1500内找出所有的亲密数对,并输出每对亲密数对。
6.编程,找出200以内的所有完数,并输出其因子。
一个数如恰好等于它的因子之和,这个数称为完数,如6=1+2+3,其中1、2、3为因子,6为因子和。
实验九数组
(一)(4学时)
1.熟练掌握数组的定义和初始化。
2.熟练掌握使用数组元素的引用。
3.继续掌握排序算法。
1.编程,输入1个正整数n(1<
n<
=10),再输入n个整数,将最小值与第1个数交换,最大值与最后1个数交换,然后输出交换后的n个数。
2.编写程序输入一个正整数(1<
=10),再输入n个整数,按绝对值从小到大排序后输出。
3.编程平面上有n个点,求所有各点之间的最长距离。
要求定义和调用函数计算距离。
4.编程,输入一个n行m列的数组,先以n行m列的格式输出该数组,然后找出该数组中值最小的元素,输出该元素及其行下标和列下标。
实验十数组
(二)(6学时)
1.熟练掌握字符数组的定义、初始化和元素引用。
2.熟练掌握字符串的存储和操作。
3.继续使用字符输入输出函数getchar()和putchar()。
1.编程,输入一个以回车结束的字符串(少于80个字符),先输出其中的小写英文字母、空格和感叹号!
,然后统计出字符的个数。
2.编程,输入一个正整数(n<
5),再输入n行字符(每个字符串少于80个字符),分别统计其中的大写英文字母、小写英文字母、数字、空格和其他字符的个数。
3.编写程序。
输入一行加减运算的字符串(少于80个字符),计算加减运算的结果。
4.编程,输入一个字符ch和一个以回车符结束的字符串(少于80个字符),统计字符串中与ch相同的字母个数。
三、实验项目设置与内容
《高级语言程序设计》课程实验项目一览表
序号
实验名称
实验内容
实验学时
实验属性
实验要求
熟悉VisualC++6.0工作环境
1.启动VisualC++6.0创建一个项目。
2.创建一个简单的源程序。
3.编译、调试并运行。
验证
必做
2
C语言的运行环境和运行过程
3
简单的C程序设计和基本数据处理
(一)
1.在键盘上如何用scanf函数输入这些数据,使a=3,b=7,x=8.5,y=71.82,c1=A,c2=a。
2.编程求ax^2+bx+c=0方程的根。
3.请将“China”译成密码,密码规律是:
4.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
4
简单的C程序设计和基本数据处理
(二)
1.对错误的华氏法和摄氏法表示温度的程序进行调试。
2.假如我国国民生产总值的年增长率为10%,计算10年后我国国民生产总值与现在相比增长多少百分比。
3.购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。
4.编写大小写字母的相互转化程序。
5.输入相关自增自减变量源程序,观察结果,并对输出结果作出合理解释。
6.分析字符变量和整型变量的相互转化程序。
5
选择结构程序设计
(一)
1.编程输入任意三个数a,b,c,求其中最大的一个数。
2.编程输入x,计算并输出下列分段函数f(x)的值。
6
选择结构程序设计
(二)
1.编写程序运输公司对用户计算运输费用。
s<
250没有折扣,250≤s<
5002%折扣,500≤s<
10005%折扣,1000≤s<
20008%折扣,2000≤s<
300010%折扣,3000≤s15%折扣。
2.编写程序把百分制成绩转换成5及记分制,要求用switch语句。
90分以上(包括90):
A,80至90分(包括80):
B,70至80分(包括70):
C,60至70分(包括60):
D,60分以下:
E。
3.编程给一个不多于5位的正整数,要求:
a)求出它是几位数b)分别输出每一位数字c)按逆序输出各位数字。
4.编程对2个整数进行乘、除和求余运算。
7
循环结构程序设计
(一)
2.编写程序输入1个正实数eps,计算并输出下式的值,直到最后一项的绝对值小于eps。
S=1-1/5+1/9-1/13+1/17-1/21+…。
4.输出以下4*5的矩阵:
12345
246810
48121620
5.编程,求1!
6.编程输出所有的”水仙花数“,所谓”水仙花数“是指一个3位数,其各位数字立方和等于该数本身。
7.一个球从100m高度自由落下,每次落地后反跳回原来高度的一半,再落下,再反弹。
综合
8
循环结构程序设计
(二)
1.编写程序输入正整数的个数n,再输入n个正整数,判断它们是否为素数。
2.编写程序输出101-115之间不能被3整除的数,每行输出5个。
3.编程输入一个正整数,再输入n个整数,输出其中的最大值,输入的每个数都再100-200之间,如果某个输入数不在100-200之间,则只处理在该数之前输入的数据。
5.编程在100-1500内找出所有的亲密数对,并输出每对亲密数对。
6.编程找出200以内的所有完数,并输出其因子。
9
数组
(一)
1.编程输入1个正整数n(1<
2.编写程序输入一个正整数(1<
平面上有n个点,求所有各点之间的最长距离。
10
数组
(二)
1.编程,输入一个以回车结束的字符串(少于80个字符),先输出其中的小写英文字母、空格和感叹号!
2.编写程序输入一个正整数(n<
3.编程输入一行加减运算的字符串(少于80个字符),计算加减运算的结果。
4.编程输入一个字符ch和一个以回车符结束的字符串(少于80个字符),统计字符串中与ch相同的字母个数。
四、实验指导书
谭浩强.C程序(第四版)学习辅导.北京:
清华大学出版,2010.7