C语言程序设计 课程大纲

发布者:刘赛赛发布时间:2023-10-07浏览次数:358

中国海洋大学本科生课程大纲


课程名称

C语言程序设计

Programming with C Language

课程代码

008501101055

责任教师

周转 于海波

课程属性

公共基础

课程性质

必修

学分

4

总课时

80

理论课时

48

实践课时

32

课外学时

48

一、 课程介绍

1.课程描述:

C语言是古老而长青的充满活力的编程语言,它有着丰富灵活的数据类型与运算,方便构建实用的数据结构,其简洁高效的语法表达,清晰的程序结构,能方便描述各类算法与编程思想,是现代很多高级编程语言的基础。

本课程是为理科、工科各专业开设的计算机技术基础通识必修课程。课程的主要任务是引导学生进入计算机程序设计的广阔世界,培养学生逻辑思辨能力、抽象能力和基本的程序设计能力、代码调试能力,了解计算机处理问题的方式方法,为更好地使用计算机处理专业领域的各类问题奠定基础。

C programming language is a aged but major and common used language, which has rich and flexible data types, diversification operations,convience and useful data structure. It has concise and efficient syntax expression,clear program structure.ability to easily descrie various algorithms and programming ideas. Such benifits of it make C programming language be the foundation of many modern advanced programming languages.

The course of Programming with C Language is a basis and compulsory course for computer technology fundamentals in science and engineering majors. The goal of the course is to guide students into computer programming world,cultivate their logical thinking ability, abstract ability, basic programming and code debugging abilitym and understand the ways and methods of computer processing problems. These abilities will lay the foundation for betteer using computers to handle various problems in the professional field.

2.设计思路:

本课程以C语言为载体,以基本的算法学习为基础,通过大量实例分析设计,小组综合作业,引导学生能用计算思维的方式来分析问题,并能对实际的问题进行数据与算法抽象,能用C语言编写程序解决实际问题,并培养良好的编程素养。

本课程分为理论学习与上机实验练习两个环节。

1)程序设计理论教学:

理论教学以课堂讲授、讨论为主,辅助以电子教案和多媒体课件,强调规范的基础内容分析、学习、掌握与训练。将整个课程内容分C语言数据类型与运算、控制结构、模块化程序设计、指针间接访问、文件操作五大部分,每一部分的学习都借助精典的算法问题切入与展开,不仅仅讲授C语言的语法规范,重点更放在程序设计思想的培养与技术实现的层面上。

2)大学计算机基础理论教学

做为大学第一门计算机课程,也需要为学生奠定计算机基础理论知识基础。这部分以课堂讲授为主线,辅以多媒体资源,介绍计算机基础理论知识。内容涵盖以下模块:计算机系统、计算机基本工作过程、计算机信息编码与处理、操作系统的功能与应用。

3)上机实验练习环节

本课程是一门在理论指导下偏重于实际动手编程、调试的应用性课程要求学生在学好理论前提下,又具有一定的动手操作能力,这些能力训练是通过上机编程练习完成的。

本课程有教学规定的32学时的上机实验课时,在杋房进行课堂内容的补充学习与讨论、上机测试及完成规定的实验练习。

本课程对理论教学的每章内容都设计有精致并富有挑战性的实验项目,让学生在规定的时间内完成并讨论。实验教学是学习程序设计过程的一个重要环节,通过完成实验项目,使学生能更好地融会贯通课堂教学的内容,接收编程能力的训练,最终能够综合运用所学知识独立进行简单的程序设计与开发。

3. 课程与其他课程的关系:

在中国海洋大学2022年新的教学计划中,本课程是大学计算机通识教育的第一门课程。

对理科与工科各专业,本课程的后续课程为《数据结构》、《软件工程》、《计算机网络》、《面向对象的程序设计》、《WEB程序设计》、《大数据计算》《微机原理与接口技术》等相关专业课程。

二、课程目标

本课程以C语言为平台,介绍程序设计的基本思想、概念与方法,培养基本的程序开发能力。通过学习,要求学生掌握C语言基本的数据结构、语法规则、控制结构和常用算法,学会用结构化程序设计方法编写清晰的程序,具备用过程化结构化的程序设计思想分析与解决现实世界中一般问题的基本能力,并用C这种高级语言进行描述。

课程学习过程中,将引入案例启迪学生对计算机技术变革的思考,介绍在现代计算机技术、人工智能、大数据等领域我们国家自主创新与研发的成果成就,国家在新技术层面参与国际竞争的努力,激发学生的民族自豪感,坚定了“四个自信”,同时也让学生明白科技的进步行业与市场的竞争永不停歇,拥有危机意识,坚定信心,学好技术,报效国家,才能让我们的民族置身不败之地。

通过学习,学生能了解现在的应用程序运行模式,了解计算机处理问题的大致流程,为学习工作中使用应用程序提供新的认识。

三、学习要求

本课程是一门理论与实验紧密结合的课程,要完成所有的课程任务,学生必须:

1)按时上课,上课认真听讲,积极参与课堂活动、随堂练习和精典实例分析。课堂表现和出勤率是成绩考核的组成部分。

2)按时完成上机实验课所规定的上机实验项目,这些作业会布置在课程实验辅助教学平台上,要求学生以规定的形式(电子文档或书面文档)提交。只有按时提交作业,完成规定数量的编程练习,才能真正掌握课程内容,真正培养起程序设计的基本能力。同时通过上机实验培养良好的程序设计风格,掌握基本的程序调试能力。

3)组建小组完成小组大作业。学期中学生自由组建协作小组,完成一个综合且有一定实用意义的小型应用程序。过程中需要进行资料收集、案例分析、模块划分、算法设计、程序调试与功能完善、文档编写等工作,这个小组大作业会将程序设计各方面的知识与技术揉合成型,促进学生的自主学习与自我完善,培养对程序设计的热爱,引导进入程序设计充满智慧与挑战的世界。

四、教学内容与进度安排

序号

专题

主题

计划课时

主要内容概述

1

C语言概述

C语言发展与特点

0.5

C语言的发展及特点

简单C程序与上机环境使用

1.5

展示简单C语言程序,介绍C语言程序的结构

C集成开发环境介绍使用

2

顺序程序设计

数据的表现形式与运算

3

常量与变量

C中基本数据类型、常用运算符与表达式

C语句

数据的输入输出

2

getchar()/putchar()scanf()/printf()函数使用

3

选择结构程序设计

实现逻辑判别的运算

1

关系运算与逻辑运算

If-else实现选择结构

2

If-else以及嵌套,实例分析

Switch实现多多分支选择结构

1

Switch语句,综合举例

4

循环结构程序设计

C中循环控制语句

2

三种循环控制语句,循环嵌套

改变循环控制状态

常用算法实例分析

3

计数控制与标志控制循环

穷举与迭代

5

数组处理批量数据

一维数组与二维数组

3

数组定义与初始化

遍历、排序、查找、增删数据

字符数组与字符串

2

字符串概念

字符串处理函数

6

函数实现模块化程序设计

函数及函数调用

3

函数原型、函数定义、形参与实参,值传递

函数递归调用

1

递归算法及递归函数

数组作为函数参数

1

数组名作函数实参

变量的作用域与存储类别

2

局部与全局变量、动态与静态变量

内部与外部函数

7

利用指针进行间接访问

指针变量与间接访问

1

指针与指向,指针变量定义,间接访问运算

指针间接引用数组

2

指向变量指针与指向一维数组指针

指针间接访问一维与二维数据

指针间接引用字符串

1

指向字符的指针间接访问字符串

多字符串操作

指针数组与多重指针

2

指针数组用法,指向指针变量间接访问指针数组

指针与函数

1

指向函数的指针

返回指针值的函数

8

用户自己建立数据类型

结构体

2

结构体类型、结构体数组使用

单向链表

1

指针处理单向链表

9

文件操作

文件顺序读写

1

文件打开/关闭

顺序读写函数

文件随机读写

1

文件位置与定位

随机读写函数

10

计算机系统与信息表示

计算机系统组成简介

2

计算机基础硬件组成

计算机基本工作原理

信息的表示与存储

3

进制与进制转换

原码、补码、反码、 ASCII

网络知识与操作系统应用

3

Internet基础

操作系统功能

五、参考教材与主要参考书

[1] C程序设计(第五版) 谭浩强著                清华大学出版社  

[2] C语言程序设计(第4版) 苏小红 王宇颖 孙志岗等

高等教育出版社  

[3] 电脑圆你程序员梦 C语言开发实例详解   白帆   电子工业出版社

[4] The C Programming Languagem   Second Edition影印版

Brian W.Kernighan & Dennis M.Ritchie,清华大学出版社 Prentice-Hall International,Inc.  1997

六、成绩评定

(一)考核方式A   A.闭卷考试 B.开卷考试 C.论文 D.考查 E.其他

(二)成绩综合评分体系:

成绩综合评分体系

比例%

1.平时成绩(考勤、实验作业、课程参与表现等、小组作业与活动等)

30

2. 上机考试

20

3. 期末笔试

50

总计

100


附:上机实验项目作业评分标准

作业的评分标准

得分

1. 严格实现作业要求并及时上交,算法清晰,程序结构清楚明白,代码正确。

90-100

2. 基本实现作业要求并及时上交,代码正确,运行能得到指定结果或部分指定结果。

80-90

3. 基本实现作业要求并及时上交,能运行或有小错误没有改正,书写或结构不完全符合要求

60-80

4. 不能完全实现作业要求,代码有错,程序无法运行或不能得到正确结果

40-60

5. 未交或雷同

0


七、学术诚信

学习成果不能造假,如考试作弊、盗取他人学习成果、抄袭他人程序项目、一份报告用于不同的课程、擅自使用AI平台等,均属造假行为。他人的想法、说法、意见和代码如不注明出处按盗用论处。本课程如有发现上述不良行为,将按学校有关规定取消本课程的学习成绩。 

八、大纲审核

教学院长:                               院学术委员会签章: