《高级语言程序设计》一教学大纲.docx
- 文档编号:8000599
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:22
- 大小:25.07KB
《高级语言程序设计》一教学大纲.docx
《《高级语言程序设计》一教学大纲.docx》由会员分享,可在线阅读,更多相关《《高级语言程序设计》一教学大纲.docx(22页珍藏版)》请在冰豆网上搜索。
《高级语言程序设计》一教学大纲
《高级语言程序设计》
(一)理论课教学大纲
课程编号:
08402003学时数:
60
学分:
4执笔人:
任祯琴
一、课程的性质与目的
《高级语言程序设计》是计算机科学与技术、软件工程、网络工程等信息技术学院本科专业的学科基础必修课,所包含的知识与技能是计算机在软件工程专业中的应用之基础。
本课程主要训练学生程序设计的基本能力,训练学生将计算机作为“人类通用智力工具”来看待,目标是利用计算机这个智力工具来分析问题和解决问题。
编程能力的培养是本门课程的首要任务。
《高级语言程序设计》课程分两学期开设,第一学期开设《高级语言程序设计》
(一)。
设置本课程的主要目的是通过对C语言的语法规则、数据类型、数据运算、语句、程序设计的三种结构、数组等的学习,掌握应用C进行程序设计的技能,为进行各种实用程序开发奠定一个良好的基础。
本课程的实践性很强,要精讲多练,注重理论联系实际。
一方面要求学生熟练掌握C语言的各种语法和编写程序的知识;另一方面要求学生熟练掌握阅读、分析、调试程序等基本技能。
二、教学内容与要求
本课程的主要内容包括:
C语言概述;算法,算法的表示以及算法流程图;数据的表现形式及其运算;数据类型;运算符与表达式的规则和使用方法;数据的输入输出;程序的顺序结构,选择结构,选择结构的嵌套和循环结构,循环结构的嵌套等程序设计方法;一维数组和二维数组的定义、引用、初始化方法;字符数组的定义、引用、初始化方法,字符数组的输入输出。
本课程的重点部分在于:
培养学生的编程能力,分析问题、设计算法是重点,语法学习与讲解应以编程需要为导向,以服务于程序设计为目的。
本课程的难点部分在于:
C语言当中部分语法知识较抽象,如:
各数据类型的存储以及取值范围、表达式计算的优先顺序、赋值过程中的类型转换、二维数组的引用、特别复杂问题的算法设计等。
学习中要有目的地加强上机验证实验,帮助理解C语言的语法含义。
以下按知识点进行阐述:
1.C语言概述(4学时)
教学内容:
C语言概述;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 2.编写程序输入一个正整数(1 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相同的字母个数。 三、实验项目设置与内容 《高级语言程序设计》课程实验项目一览表 序号 实验名称 实验内容 实验学时 实验属性 实验要求 1 熟悉VisualC++6.0工作环境 1.启动VisualC++6.0创建一个项目。 2.创建一个简单的源程序。 3.编译、调试并运行。 1 验证 必做 2 C语言的运行环境和运行过程 1.调试示例,正确的在屏幕上输出一句“welcometoyou! ”。 2.编程求解三个数的最大值的程序。 3.上机运行验证教材上的相关例子。 2 验证 必做 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个字母代替原来的字母。 分别用putchar函数和printf函数输出这5个字符。 4.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。 用scanf输入数据,输出时要求有文字说明,取小数点后2位数字。 5.用getchar函数读入两个字符给c1和c2,然后分别用putchar函数和printf函数输出这两个字符。 2 验证 必做 4 简单的C程序设计和基本数据处理 (二) 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.分析字符变量和整型变量的相互转化程序。 4 验证 必做 5 选择结构程序设计 (一) 1.编程输入任意三个数a,b,c,求其中最大的一个数。 2.编程输入x,计算并输出下列分段函数f(x)的值。 如果x<1,则输出y=x;若1<=x<10,则输出y=2x-1;若x>=10,则输出y=3x-11。 1 验证 必做 6 选择结构程序设计 (二) 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。 3.编程给一个不多于5位的正整数,要求: a)求出它是几位数b)分别输出每一位数字c)按逆序输出各位数字。 4.编程对2个整数进行乘、除和求余运算。 2 验证 必做 7 循环结构程序设计 (一) 1.编写程序输入2个正整数,输出它们的最小公倍数和最大公约数。 2.编写程序输入1个正实数eps,计算并输出下式的值,直到最后一项的绝对值小于eps。 S=1-1/5+1/9-1/13+1/17-1/21+…。 3.编程,输入一个整数,求它的各位数字之和及位数。 4.输出以下4*5的矩阵: 12345 246810 3691215 48121620 5.编程,求1! +2! +……+20! 。 6.编程输出所有的”水仙花数“,所谓”水仙花数“是指一个3位数,其各位数字立方和等于该数本身。 7.一个球从100m高度自由落下,每次落地后反跳回原来高度的一半,再落下,再反弹。 求它在第10次落地时,共经过多少米,第10次反弹多高。 用for循环编写。 4 综合 必做 8 循环结构程序设计 (二) 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 验证 必做 9 数组 (一) 1.编程输入1个正整数n(1 2.编写程序输入一个正整数(1 3.编写程序。 平面上有n个点,求所有各点之间的最长距离。 要求定义和调用函数计算距离。 4.编程,输入一个n行m列的数组,先以n行m列的格式输出该数组,然后找出该数组中值最小的元素,输出该元素及其行下标和列下标。 4 验证 必做 10 数组 (二) 1.编程,输入一个以回车结束的字符串(少于80个字符),先输出其中的小写英文字母、空格和感叹号! ,然后统计出字符的个数。 2.编写程序输入一个正整数(n<5),再输入n行字符(每个字符串少于80个字符),分别统计其中的大写英文字母、小写英文字母、数字、空格和其他字符的个数。 3.编程输入一行加减运算的字符串(少于80个字符),计算加减运算的结果。 4.编程输入一个字符ch和一个以回车符结束的字符串(少于80个字符),统计字符串中与ch相同的字母个数。 6 验证 必做 四、实验指导书 谭浩强.C程序(第四版)学习辅导.北京: 清华大学出版,2010.7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级语言程序设计 高级 语言程序设计 教学大纲