《程序设计基础实验》课程教学大纲一、课程信息课程名称:程序设计基础实验Basic Experiment of Programming课程代码:06E7107B课程类别:专业基础课适用专业:数字媒体技术课程学时:15学时课程学分:0.5学分修读学期:第2学期先修课程:计算机导论二、课程目标《程序设计基础实验》课程是数字媒体技术专业本科生的一门专业基础课程,是数据结构、软件工程等课程的先修课程。目的是通过实验加深学生对程序设计基础课程所学知识的理解,掌握C语言的编程技巧和结构化程序设计的方法,培养学生分支结构和循环结构的实际应用,培养学生利用数组、指针、结构体类型和单链表的相关知识解决实际问题的能力。同时通过实验培养学生的实践动手能力、利用C语言编程解决实际问题及调试程序的能力及模块化程序设计的能力。通过本课程的学习,有助于学生逻辑思维能力的训练。要求学生能够掌握结构化程序设计的思想和方法;掌握程序设计的基础知识、基本概念、基本技能和方法。能够熟练地运用结构化程序设计方法设计、编写、调试和运行C语言程序。能够根据实验要求独立分析问题、解决问题;也能够应用计算思维方法团队合作完成问题的分析和解决。培养学生用计算机解决实际问题的动手能力,使学生具备初步的C语言程序设计能力,为后续课程的学习与实践打下良好的基础。同时通过该课程的学习要求学生掌握一种C程序编译软件的使用。课程目标主要包括以下具体要求。(一)具体目标通过本课程的学习,使学生达到以下目标:
《程序设计基础实验》课程教学大纲 一、课程信息 课程名称:程序设计基础实验 Basic Experiment of Programming 课程代码:06E7107B 课程类别:专业基础课 适用专业:数字媒体技术 课程学时:15学时 课程学分:0.5学分 修读学期:第2学期 先修课程:计算机导论 二、课程目标 《程序设计基础实验》课程是数字媒体技术专业本科生的一门专业基础课程, 是数据结构、软件工程等课程的先修课程。目的是通过实验加深学生对程序设计 基础课程所学知识的理解,掌握 C 语言的编程技巧和结构化程序设计的方法,培 养学生分支结构和循环结构的实际应用,培养学生利用数组、指针、结构体类型 和单链表的相关知识解决实际问题的能力。同时通过实验培养学生的实践动手能 力、利用 C 语言编程解决实际问题及调试程序的能力及模块化程序设计的能力。 通过本课程的学习,有助于学生逻辑思维能力的训练。要求学生能够掌握结 构化程序设计的思想和方法;掌握程序设计的基础知识、基本概念、基本技能和 方法。能够熟练地运用结构化程序设计方法设计、编写、调试和运行 C 语言程序。 能够根据实验要求独立分析问题、解决问题;也能够应用计算思维方法团队合作 完成问题的分析和解决。培养学生用计算机解决实际问题的动手能力,使学生具 备初步的 C 语言程序设计能力,为后续课程的学习与实践打下良好的基础。同时 通过该课程的学习要求学生掌握一种 C 程序编译软件的使用。 课程目标主要包括以下具体要求。 (一)具体目标 通过本课程的学习,使学生达到以下目标:
1.通过实验题目的完成使学生巩固和加强《程序设计基础》课程的理论知识,掌握结构化程序设计的基本思路和方法,在所掌握的基础知识和技能的基础上,进一步提高自学能力和查找资料的能力。【支撑毕业要求指标点2.1、3.1】2.通过课程实验使学生掌握调试程序的基本方法及上机操作方法。掌握书写程序设计开发文档的能力,使学生学会书写课程实践总结报告。【支撑毕业要求指标点4.2、4.3】3.能够应用面向过程的编程思想,对实验题目设计的关键问题,建立相应的实验方案,运用C语言给出方案的详细设计,设计相应关键算法。【支撑毕业要求指标点5.3】课程思政目标:结合工程人员培养目标,以新时代课程思政为引领,在培养学生自主学习、团队协作的基础上,将国家的发展需求与个人专业领域相结合来实现人生价值,即专业课程中孕育思政,思政中促进专业课的学习,相辅相成,相互促进,形成协同效应,达到立德树人的育人目标。具体的课程思政目标:中国文化与精神、科技报国、科学精神、科学思维、规则意识、工匠精神、法治教育。(二)课程目标与毕业要求的对应关系表1课程目标与毕业要求指标点的对应关系课程目标支撑的毕业要求支撑的毕业要求指标点【2.1知识素养】能够运用数理知识识别、判断和表述数字媒体技2.问题分析术工程中的核心问题。课程目标13.设计/开发解【3.1专业技能】掌握数字媒体知识,能够在数字媒体系统的开发决方案项目中进行系统设计。【4.2专业技能】能够运用数字媒体学科相关原理和专业知识设计实验方案,并按照合理步骤实施实验以支持复杂工程问题的解决。课程目标24.科学研究【4.3专业技能】能够对采集到的实验数据进行整理、分析和解释,并能通过信息综合得出有效结论。【5.3专业技能】能够使用恰当的数字媒体工程工具进行数字媒体课程目标35.现代工具运用系统模拟、仿真和构建,并有效理解其局限性。三、课程内容(一)课程内容与课程目标的关系
1. 通过实验题目的完成使学生巩固和加强《程序设计基础》课程的理论知 识,掌握结构化程序设计的基本思路和方法,在所掌握的基础知识和技能的基础 上,进一步提高自学能力和查找资料的能力。【支撑毕业要求指标点 2.1、3.1】 2. 通过课程实验使学生掌握调试程序的基本方法及上机操作方法。掌握书 写程序设计开发文档的能力,使学生学会书写课程实践总结报告。【支撑毕业要 求指标点 4.2、4.3】 3. 能够应用面向过程的编程思想,对实验题目设计的关键问题,建立相应 的实验方案,运用 C 语言给出方案的详细设计,设计相应关键算法。【支撑毕业 要求指标点 5.3】 课程思政目标:结合工程人员培养目标,以新时代课程思政为引领,在培养 学生自主学习、团队协作的基础上,将国家的发展需求与个人专业领域相结合来 实现人生价值,即专业课程中孕育思政,思政中促进专业课的学习,相辅相成, 相互促进,形成协同效应,达到立德树人的育人目标。具体的课程思政目标:中 国文化与精神、科技报国、科学精神、科学思维、规则意识、工匠精神、法治教 育。 (二)课程目标与毕业要求的对应关系 表1 课程目标与毕业要求指标点的对应关系 课程目标 支撑的毕业要求 支撑的毕业要求指标点 课程目标 1 2.问题分析 3.设计/开发解 决方案 【2.1 知识素养】能够运用数理知识识别、判断和表述数字媒体技 术工程中的核心问题。 【3.1 专业技能】掌握数字媒体知识,能够在数字媒体系统的开发 项目中进行系统设计。 课程目标 2 4.科学研究 【4.2 专业技能】能够运用数字媒体学科相关原理和专业知识设计 实验方案,并按照合理步骤实施实验以支持复杂工程问题的解决。 【4.3 专业技能】能够对采集到的实验数据进行整理、分析和解释, 并能通过信息综合得出有效结论。 课程目标 3 5.现代工具运用 【5.3 专业技能】能够使用恰当的数字媒体工程工具进行数字媒体 系统模拟、仿真和构建,并有效理解其局限性。 三、课程内容 (一)课程内容与课程目标的关系
表2 课程内容与课程目标的关系课程内容教学方法支撑的课程目标学时安排翻转课堂课程目标1、课程目标22 学时C运行环境的熟悉及简单程序设计4学时选择结构、循环结构程序设计案例式教学课程目标1、课程日标2课程目标1、课程目标2、课3学时数组应用——学生成绩统计小系统案例式教学程目标32 学时指针应用程序设计案例式教学课程目标1、课程目标2综合应用程序设计——小型学生管理课程目标1、课程目标2、课案例式教学4学时系统程目标3合计15 学时(二)具体内容实验项目一C运行环境的熟悉及简单程序设计(2学时)【实验目标与要求】1、实验目标:知识目标:通过本次实验,使学生熟悉VisualC++的编译环境;掌握C程序的编辑、编译、链接和运行的基本过程;了解数据类型在程序设计中的意义;熟悉简单程序(顺序结构程序)的程序设计方法。能力目标:培养学生初步阅读分析C程序的能力和初步具备调试程序的技能,为后续学习内容打下扎实的基础。培养学生查阅、分析文献资料的能力。素养目标:培养学生的实践能力,培养学生认真细致的工作态度。思政目标:培养学生严谨的治学态度,培养学生遵守相关实验的规则规定,培养学生的辩证思维能力。2、实验要求:阅读实验题目、分析结果;上机打开VisualC++编译系统,并熟悉其环境;在编译环境中编辑由实验内容提供的程序,并编译、链接和运行对应程序代码,并对结果进行检验:分析和解决在调试过程中出现的程序错误:通过程序设计,深刻理解数据和数据类型;掌握变量的定义以及运算符的使用。【实验重点与难点】1、实验重点:编辑、编译、链接及运行C程序的方法
表2 课程内容与课程目标的关系 课程内容 教学方法 支撑的课程目标 学时安排 C 运行环境的熟悉及简单程序设计 翻转课堂 课程目标 1、课程目标 2 2 学时 选择结构、循环结构程序设计 案例式教学 课程目标 1、课程目标 2 4 学时 数组应用——学生成绩统计小系统 案例式教学 课程目标 1、课程目标 2、课 程目标 3 3 学时 指针应用程序设计 案例式教学 课程目标 1、课程目标 2 2 学时 综合应用程序设计——小型学生管理 系统 案例式教学 课程目标 1、课程目标 2、课 程目标 3 4 学时 合计 15 学时 (二)具体内容 实验项目一 C 运行环境的熟悉及简单程序设计(2 学时) 【实验目标与要求】 1、实验目标: 知识目标:通过本次实验,使学生熟悉Visual C++的编译环境;掌握C程序 的编辑、编译、链接和运行的基本过程;了解数据类型在程序设计中的意义;熟 悉简单程序(顺序结构程序)的程序设计方法。 能力目标:培养学生初步阅读分析C程序的能力和初步具备调试程序的技能 ,为后续学习内容打下扎实的基础。培养学生查阅、分析文献资料的能力。 素养目标:培养学生的实践能力,培养学生认真细致的工作态度。 思政目标:培养学生严谨的治学态度,培养学生遵守相关实验的规则规定, 培养学生的辩证思维能力。 2、实验要求: 阅读实验题目、分析结果;上机打开 Visual C++编译系统,并熟悉其环境; 在编译环境中编辑由实验内容提供的程序,并编译、链接和运行对应程序代码, 并对结果进行检验;分析和解决在调试过程中出现的程序错误;通过程序设计, 深刻理解数据和数据类型;掌握变量的定义以及运算符的使用。 【实验重点与难点】 1、实验重点: 编辑、编译、链接及运行 C 程序的方法
2、实验难点:分析和解决在调试过程中出现的程序错误。【实验类型】验证性【实验内容】1. 1#include<stdio.h)mainO(int a,b,c,d,timsum;a=8,b=7,c=5,d=6;timsum=a*b+c*d;printf(“%d*%d+%d*%d=%d\t%d\n”,a,b,cd,timsum,10*5);11. 2#include<stdio.h>mainO(int a=2,b=5,c=6,d=10;int z;float x,y;x=12;y=365.2114;z=(float)a+ba+=b; b-=c;c*=d;d/=a;a%=c;printf(“%flln",z);printf(“%d %d %d %d %d\n”,a,b,c,d,a);J1.3#include<stdio.h>mainO(int a=100,b=50,c,d;int x=5,y=12,e,f,g;
2、实验难点: 分析和解决在调试过程中出现的程序错误。 【实验类型】 验证性 【实验内容】 1.1 #include<stdio.h> main() { int a,b,c,d,timsum; a=8,b=7,c=5,d=6; timsum=a*b+c*d; printf(“%d*%d+%d*%d=%d\t%d\n”,a,b,c,d,timsum,10*5); } 1.2 #include<stdio.h> main() { int a=2,b=5,c=6,d=10; int z; float x,y; x=12;y=365.2114; z=(float)a+b a+=b;b-=c;c*=d;d/=a;a%=c; printf(“%f\\n”,z); printf(“%d %d %d %d %d\n”,a,b,c,d,a); } 1.3 #include<stdio.h> main() { int a=100,b=50,c,d; int x=5,y=12,e,f,g;
c=((a>b)?a:b) ;d=((a<b)?a:b*b);printf(“%d%d\n”,c,d);e=x&y;f=xly;g=x y;printf(“%d%d%dn"e,f,g);1.4 #include<stdio.h>main()1char c;c=getchar ();putchar (c);11. 5 #include<math.h>main()(float a,b,c,s,area;scanf(“%f,%f,%f”,&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*s(s-c));printf(“a=%7.0f,b=%7.2f,c=%7.2f,s=%7.2fin”,a,b,c,s);printf(“area=%7.2f/n",area);11.6#include<stdio.h>mainO(char cl,c2;c1=getchar;
c=((a>b)?a:b); d=((a<b)?a:b*b); printf(“%d%d\n”,c,d); e=x&y; f=x|y; g=x^y; printf(“%d%d%d\n”e,f,g); } 1.4 #include<stdio.h> main() { char c; c=getchar(); putchar(c); } 1.5 #include<math.h> main() { float a,b,c,s,area; scanf(“%f, %f, %f”,&a, &b, &c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*s(s-c)); printf(“a=%7.0f, b=%7.2f, c=%7.2f, s=%7.2f\n”,a,b,c,s); printf(“area=%7.2f\n”,area); } 1.6 #include<stdio.h> main() { char c1,c2; c1=getchar();