-
Notifications
You must be signed in to change notification settings - Fork 2
Syllabus2016
参考书目: C Primer Plus
本讲主要给出程序设计的概述,让学生了解计算机科学是怎样的学科,计算机能够帮助人们做什么事情,以及人们怎么操作计算机解决问题。本讲会以一个扑克牌排序的具体案例串联起以下四部分内容:
- 计算机如何表示信息
- 计算机硬件体系结构
- 从程序设计到硬件执行
- 教学计划与考核要求
课件下载: [01-Introduction.ppt] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/slides/01-Introduction.ppt)
本讲通过简单的C语言程序实例,带领学生认识C语言,掌握C语言最基本的术语与结构,包括以下内容:
- 认识C语言
- 如何开始写C程序
- C程序的基本结构
- 扑克排序C程序第一版
课件下载: [02-Introducing-C.ppt] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/slides/02-Introducing-C.ppt)
C语言要点总结Cheat Sheet: [C Reference Card (ANSI) 2.2.pdf] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/refs/C%20Reference%20Card%20(ANSI)%202.2.pdf), [C Reference Cheat Sheet by Ashlyn Black - Cheatography] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/refs/C%20Reference%20Cheat%20Sheet%20by%20Ashlyn%20Black%20-%20Cheatography.pdf)
源代码: [hello.c] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/code/hello.c), [first.c] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/code/first.c), [second.c] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/code/second.c)
本讲主要给出作为C语言的程序员应该如何处理数据,具体细分为以下四个部分:
- C语言的数据类型:介绍C语言针对整数、实数、字符等数据的表示与存储方法,并介绍了变量与常量的概念
- C语言的格式化输入输出:介绍C的程序员如何将输入从IO设备输入以及输出
- C语言的运算符和表达式:介绍数据是如何进行操作的
- C语言的数据类型转换:介绍不同数据类型是如何转换的
课件下载: 9月27日课件 03-Data-And-C-1.ppt, 9月30日课件 03-Data-And-C-2.ppt
源代码: 计算BMI代码 third.c, 输入输入代码样例 showIOs.c
本次上机题目(均来自[友学系统] (http://202.112.113.8/problemlist.php),简称YOJ)
- 必完成题目:[1004] (http://202.112.113.8/problem.php?id=1004), [1005] (http://202.112.113.8/problem.php?id=1005), [1006] (http://202.112.113.8/problem.php?id=1006), [1007] (http://202.112.113.8/problem.php?id=1007)
- 选完成题目:[1001] (http://202.112.113.8/problem.php?id=1001), [1002] (http://202.112.113.8/problem.php?id=1002), [1003] (http://202.112.113.8/problem.php?id=1003)
课件下载: [Dis01.ppt] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/slides/Dis01.ppt)
测验题目下载: [quiz-1.pdf] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/assignments/quiz-1.pdf)
本讲主要介绍作为C语言的程序员应该如何针对上讲介绍的数据进行控制操作,具体细分为以下三个部分:
- C语言的分支控制语句:介绍分支与条件程序结构的概念、逻辑表达式、N-S图表示法,并介绍C语言实现分支的三种语句格式
- C语言的循环控制语句:介绍循环与条件程序结构的概念,并介绍C语言实现循环的语句格式
- 逻辑思维与计算机解题:侧重引导学生将真实问题转换为逻辑操作,掌握枚举法,并利用循环语句实现。
课件下载: 10月9日课件 04-Control-Statement-1.ppt, 10月18日课件 04-Control-Statement-2.ppt, 10月21日课件 04-Control-Statement-3.ppt
源代码: 计算分段(符号)函数代码 piecewise_func.c, 输入数字并加总 summing.c, 数列求和 zeno.c
本讲主要介绍作为C语言的重要数据组织方式数组,具体细分为以下几个部分:
- 数组的概念、定义和初始化
- 二维数组
- 数组的排序问题
- 筛法求素数
课件下载: 10月25日课件 05-Array-1.ppt, 10月28日课件 05-Array-2.ppt
源代码: 输出字母金字塔 loop_print.c, 教室分配代码 classroom_assignment.c, 冒泡排序代码 bubble_sort.c, 选择排序代码 select_sort.c, 插入排序代码 insert_sort.c
本讲主要介绍作为C语言的重要功能函数,具体细分为以下几个部分:
- 函数的简单使用
- 枚举、递推和递归
- 函数的深入分析
课件下载: 11月1日课件 06-Function-1.ppt, 11月4日课件 06-Function-2.ppt
源代码: 打印井号 pound.c, 计算指数 power.c,
课件下载: [Dis02.ppt] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/slides/Dis02.ppt)
课件下载: [Dis03.ppt] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/slides/Dis03.ppt)
特别注意::本次课件的第25-27页为期中前内容小节,应仔细阅读,并结合进行复习。
源代码-1: func.c, pi.c,minmax.c,split_sequence.c,plan.c
源代码-2: sequence.c, buddy.c,miner.c,add.c,log.c
课件下载: [Dis04.ppt] (https://github.com/fanju1984/introduction-to-programming/blob/master/introduction-to-programming/slides/Dis04.ppt)
源代码: piecewise-func.c, vowel.c,occurrence.c,series-sum.c,gene.c, series-sum-plus.c
本讲主要介绍一种重要的编程方法——递归,具体细分为以下几个部分:
- 递归初步
- 递归的典型问题:查找与排序
- 递归的其它问题
课件下载: 11月25日课件 07-Recursion-1.ppt, 11月29日课件 07-Recursion-2.ppt, 12月2日课件 07-Recursion-3.ppt
友学练习源代码: pro49.c, pro50.c,pro51.c,pro57.c, pro69.c,pro74.c,pro92.c, pro86.c pro98.c
课件下载: 12月9日课件 08-Struct.ppt
本讲主要介绍C语言中的一项重要概念——指针,具体细分为以下几个部分:
- 指针的基本使用
- 指针与数组
- 指针与字符串
- 指针与函数
- 指针与结构体
课件下载: 12月9日课件 09-Pointer-1.ppt, 12月13日课件 09-Pointer-2.ppt, 12月16日课件 09-Pointer-3.ppt, 12月20日课件 09-Pointer-4.ppt
源代码: simple.c, swap.c, sorted_create.c
课程项目介绍: CourseProject-Intro.ppt
词典数据下载: vocabulary.csv
程序设计导论 范举副教授 中国人民大学信息学院