程序设计基础(C语言)课程主页-2016级

  时间很快,2016级的小鲜肉们已经在猜测老贺长什么样子了。
  从在线作业到翻转课堂,几届的学生跟着我受了不少苦。话虽这么说,并不代表2016级的就要轻松了(老贺虚伪到底!)。不过,苦孩子们,享受吧。
  话说回来,老贺在这一届身上也不会太轻松。翻转课堂的模式不陌生了,但新生出来的想解决的问题并不少,让学生学得有效、学得有趣、学得轻松是我的追求。做过不少资源,但随着培养方案的变化,选用教材的变化,中间的调整、补充要花不少时间。最大的变化,是实践体系要完全改变,不再按以前历届的安排去做,更多按课程组的共识,实践项目从OJ平台找,主要的战场,也就在这里了。
  要延续的是,用博客交作业所带来的红利不想丢。同学们在OJ上做完实践,将要通过博客提交解题报告。这样做是有益的,尽早接触行业,这是到CSDN“混”的最大益处,尽管这和学校的考试可以并不搭边。当前同学们在OJ上解题存在的问题,是一旦AC,便万事大吉。这中间缺一个环节——总结。我将要求我的学生在OJ上闯关后,通过发布博文,完成的九十步之后的那十步,收效可是翻倍的!
  好吧,2016级的同学们,我们就要启程了!

学生清单

杨河生  景怡乐  李忠林  张明明  何定钦  夏晓林  邓 哲  宗意行  
冯婉琪  杨公栋  张 威  单长喜  郭 聪  胡日坤  伦栋才  于 航  
闫春相  牟肖冲  苏 浩  姜淇瀚  蔡 伟  王 朝  李伟明  颜丙齐  
曹欣宇  毕春超  王兴振  马春澎  贾如杉  展 一  崔 翔  胡寅生  
张 昊  汪莹莉  张学伟  钱梦雨  尤文敏  李卓锟  张 旺  何知令  

课程材料

第4周 程序设计初体验(第1讲)

实践任务:链接
参考解答:1-星号拼字母  2-长方形周长和面积  3-并联电阻  4-圆柱表面积  

第5周 编程思想启蒙(第2讲)

实践任务:链接
参考解答:
1-Raptor程序设计:圆的周长 矩形的面积  low or high! 双分支选择 分段函数 求和 Error或求和 三色球问题 斐波那契数列 
2-C语言简单选择结构程序:正差值答 三数最大值 发工资

第7周 算术运算与选择结构程序设计(第3讲)

A. 课前自学目录

0301数值数据类型及表示
0302变量的使用  程序阅读
0303算术运算符与算术表达式 自选实践项目
0304表达“条件”——条件表达式
0305将条件“组合”起来——逻辑表达式 
0306用if语句实现分支结构 自选实践项目
0307if语句的嵌套 程序阅读  自选实践项目
0308用switch语句实现多分支结构 程序阅读
0309利用switch语句解决问题  自选实践项目 
补充资料: C语言中数学函数  C语言中的运算符

B. OJ实践

题目-算术运算与选择结构
参考解答(必选):(1021)按要求输出 (2493)两个整数的四则运算 (2679)百位数分解 (2681)求三角形面积 (2013)一元二次方程Ⅱ (1030)求奖金总数
  

第8周 循环程序设计(第4讲)

A. 课前自学目录

0401循环思想启蒙:输出小星星 课件源码  程序阅读  自选实践项目
0402三种循环语句 课件源码  程序阅读  自选实践项目
0403用循环累加 课件源码  程序阅读  自选实践项目
0404问题求解方法——迭代 课件源码   自选实践项目
0405循环嵌套 课件源码   自选实践项目
0406用break和continue改变流程 课件源码  程序阅读  自选实践项目
0407问题求解方法——穷举 课件源码   自选实践项目
0408调试利器——程序的单步执行
补充:OJ平台中不同输入要求的处理

B. OJ实践

题目-用循环解决问题
参考解答(必做):(2399)求倒数和 (1992)分数序列 (1034)求值 (1039)小球自由下落 (2001)打印数字图形

C. 实践项目

问题求解方法:穷举思维解题 
参考解答:小明借书 水仙花数 鸡兔共笼 换分币 年龄几何 三色球问题 找数字 谁是小偷 污损的单据|

第9周 其他运算、字符数据、输入输出(第5讲)

A. 课前自学目录

0501 标识符及其命名
0502自增与自减
0503数值型数据的存储原理 课件源码  程序阅读 
0504赋值运算符与赋值表达式 课件源码
0505逗号运算符与逗号表达式
0506条件运算符和条件表达式 课件源码
0507字符数据及字符类型  课件源码   自选实践项目
0508用循环处理文字 课件源码   自选实践项目
0509数据的输入 课件源码  程序阅读
0510数据的输出 课件源码  程序阅读
B.OJ实践
题目-用循环解决问题-II
参考解答:(1032) 统计字符个数 (1923) ASCII码排序 (2506) 切面条 (1609) 等比数列 (2472) 大帆玩英雄联盟 (1915) 第几天 (2698) 大奖赛计分 

第10周 应用问题求解(第6讲)

A. 课前自学目录

0601 C语言的程序结构与语句
0602 C语言的库函数
0603位运算及其应用 课件源码  程序阅读
0604算法的基本概念 课件源码
0605问题求解——求素数 课件源码   自选实践项目
0606将数据输出到文本文件 课件源码  
0607从文本文件中读入数据 课件源码   自选实践项目

B. 实践项目

题目-应用问题求解
参考解答:个人所得税1 2  回文数  小学生数学考试系统

第11周 初识函数(第7讲)

A. 课前自学目录

0701 模块化程序设计及C语言中的函数 课件源码
0702 体验自定义函数 课件源码
0703 函数的返回值 课件源码
0704 函数的参数 课件源码
   —-程序阅读  自选实践项目—-
0705 函数的声明、定义和调用 课件源码
0706 函数的嵌套调用 课件源码
   —- 程序阅读  自选实践项目—-
0707 调试技术:进入函数内部去 课件源码  自选实践项目

B. OJ实践

题目-初识函数
参考解答(必做):(2964)查闰年 (2963)判断三角形 (2966)循环画三角形 (2962)日期妙算星座 (1047)求两个整数的最大公约数和最小公倍数 (2405)牛顿迭代法求根 (2965)趣味取小数

第12周 递归函数与宏命令(第8讲)

A. 课前自学目录

0801 认识递归 课件源码
0802 递归法问题求解 课件源码
0803 递归经典:汉诺塔 课件源码
    —-程序阅读  自选实践项目—-
0804 一个程序,多个文件 课件源码
0805 预处理之宏定义 课件源码 程序阅读 
0806 预处理之文件包含 课件源码
0807 预处理之条件编译 课件源码 程序阅读 

B. OJ实践

题目-递归函数和宏
参考解答:2968: 递归方法实现逆序  2747: 进制转换(十进制转二进制) 1942: 进制转换 2021: 汉诺塔 1056: (用宏)输出已交换后的两个值 2970: 利用参数宏进行角度与弧度转换

C. OJ实践

题目-递归函数和程序的多文件组织
参考解答:(见题目内链接)

第13周 变量的存储类别与作用域、指针初识(第9讲)

A. 课前自学目录

0901 全局变量和局部变量 课件源码
0902 变量的存储类别 课件源码  程序阅读
0903 静态函数与外部函数
0904 外部全局变量和静态全局变量 课件源码
    —-程序阅读  自选实践项目—-
0905 指针及其运算 课件源码 程序阅读
0906 参数传递方式:传值与传地址 课件源码 程序阅读
0907 返回指针的函数 课件源码 

B. 程序阅读

阅读程序-源代码链接

C. OJ实践

题目-实践
参考解答(必做):2969: 学生成绩的处理 2972: 从文件中读数据

第14周 数组(第10讲)

A. 课前自学目录

1001 数组的引入 课件源码
1002 一维数组的定义和引用 课件源码
1003 一维数组应用二三例 课件源码
1004 越界的后果 课件源码
    —-程序阅读 程序填空   自选实践项目—-
1005 用指针法访问数组元素 课件源码
1006 数组名作为函数参数 课件源码
1007 指针作函数参数 课件源码
    —-程序阅读  自选实践项目 阅读源码(洗牌)—-
1008 二维数组及其定义 课件源码
1009 二维数组元素的引用 课件源码
    —-程序阅读 程序填空   自选实践项目—-
补充案例:查找算法源码 排序算法源码 程序阅读  自选实践项目

B. 实践

题目-数组初步
参考解答:1- 数组大折腾  2- 成绩处理函数版 3- 折腾二维数组 4- 矩阵运算

C. OJ实践

题目-实践
参考解答(必做):2000 数组逆序 1045 插入有序数组中 2747 进制转换 1044 矩阵对角线元素之和

第15周 指针应用和字符串(第11讲)

A. 课前自学目录

1101 指针的运算 课件源码
1102 使用指针操作二维数组 课件源码
1103 多维数组作函数参数 课件源码
    —-程序阅读  自选实践项目—-
1104 动态存储管理与动态数组的实现 课件源码  自选实践项目
1105 字符串、字符数组、字符指针 课件源码
1106 字符和字符串处理函数 课件源码
    —-程序阅读 程序填空  自选实践项目—-
1107 操作字符串数组 课件源码 程序阅读  自选实践项目
1108 main函数的参数 课件源码  自选实践项目

B. OJ实践

题目-实践题目
参考解答(必做):2886: 大写改小写 2568: 字符串逆序输出 2279: 字符串分段(串) 1052: 两个字符串连接 2417: 字符串长度 2284: 按长度截断 2274: 字符串插入 2802: 判断字符串是否为回文 2569: 统计字符串种类 2424: 字符串比较 2874: 包含B的字符串 2305: 你就成了我 2290: 字符串的修改 

第16周 结构体及其他数据类型(第12讲)

A. 课前自学目录

1201 体验结构体 课件源码 
1202 结构体成员的引用 课件源码 
1203 结构体数组及其应用 课件源码 
    —- 自选实践项目—-
1204 指向结构体的指针 课件源码 
1205 当结构体成员为指针 课件源码
  —- 自选实践项目—-
1206 联合体及其应用 课件源码 应用例
1207 枚举类型及其应用 课件源码  自选实践项目
1208 自定义类型 课件源码 

B. 编程实践

题目-实践题目
参考解答:1-复数结构体 2-学生成绩处理 3-点结构体

C. OJ实践

题目-实践题目
参考解答(必做):2428-本年中是第几天 2877- 职工信息结构体 2878- 学生信息排序

第17周 复习课(第13讲)

(待设计)

你可能感兴趣的:(C语言教学)