当前课程知识点:C语言程序设计(上) > 从问题到C语言程序设计 > 1.1 计算机的问题求解方法 > 1.1.1--程序设计面向的问题
大家好 欢迎大家一起学习C语言程序设计
我们这个课程的理念是这样的
面向问题学习程序设计
大家关于程序设计知道点什么吗
好 无论大家知道还是不知道
都不要紧 我们从头开始
那么这一章我们讨论的是
那么这里边包括了
六个问题
我们逐步展开
大家一定会关心说
通过这一章的学习 我们会知道什么哪
我们会知道
首先我们看
计算机的问题求解方法
这里边我们讨论
四个小问题
我们首先看第一个
当然大家首先关心的是说
什么问题一定要用程序设计的方法解决呢
当然下面关心的是 如何用程序的方法解决
我们先看第一个
这个问题 大家一看
是不需要用程序设计的方法解决的
为什么哪 是因为它有现成的软件
这是大家熟知的
那 这个问题
我们看也是现成的软件支持的
当然 再看这一大堆的软件
大家 发现上面既有你喜欢的游戏的软件
也有很多工具软件
那这些哪 都有现成的软件帮助我们解决
当然软件也是由程序构成的
只是说有人帮助我们把这些问题
已经用软件的方式呈现出来
当然那这些哪我们就不需要自己为它去编程序
好 那我们就说许多常见的问题
是通过软件的方式已经解决了
什么样的问题不能通过这些软件的方式解决哪
我们看这个问题
如果我们要打印一张乘法九九表
那 这个有软件吗
没有软件 为什么呢
这个东西太小 所以要用程序的方法来解决
好 我们再看第二个问题
关于一个图形变换的问题
我们看 这个头像
好 这个头像在变化
那 它有现成的软件吗
看就没有 这是一个我们熟悉的人
那它是用什么方法呢
必须用程序的方法
因为这个问题太个别了
好 再看第三个问题是关于文件压缩
大家都知道
文件压缩里面一个著名的算法是霍夫曼算法
因为它的压缩率比较高
但是这个算法呢 也还在继续发展中
所以呢 通常是用程序的方法去解决
那这边是实现霍夫曼算法的一个程序的流程
好 那除过我们现在说的这三个问题之外
还有许许多多的问题
也是需要用程序的方法解决的
比如说 求和问题
排序问题 找素数的问题
组合问题 数列问题等等
那 这些哪我们通常都需要
用一种计算机语言去编制程序
来解决这些个性化的问题
所以哪 我们总结一句话说
一切可计算问题都可以用程序的方法解决
而我们需要解决的一些特殊的问题
也必须用计算机程序的方法解决
大家一定关心程序设计
到底怎么进行哪
我们通常说程序设计是需要五个环节的
那首要的一个环节是
确定这个问题可计算
这个非常重要
可计算问题下来给它建立数学模型
那接下来那对这个数学模型
我们再来设计它的算法和数据结构
那这些事情都进行完了
我们才能够说选择一种合适的计算机语言
来编写程序
最后 把这个程序拿到一个环境下
去调试运行 得到结果
好 这里边哪有几个关键词
可计算 数学模型 算法和数据结构 语言
调试运行 这是这五个步骤里边的
几个非常关键的词语
好 接下来我们对学习程序设计的目的
需要再明确一下
我们把它总结成三句话
第一句话是
培养基于计算机进行计算思维的意识
培养用计算机语言求解问题的能力
培养程序设计的方法
-1.1 计算机的问题求解方法
--讨论题:数学模型
-1.1 计算机的问题求解方法--作业
-1.2 C语言与C程序
--讨论题:运算符
-1.3 C语言处理系统与程序调试运行
--例程
-1.4 程序中的人机交互
--例程
--作业讨论区
-2.1 算术运算的C程序实现
--算术混合运算.c
-2.1 算术运算的C程序实现--作业
-2.2 关系运算的C程序实现
--bukao.c
--字符比较.c
--讨论题:比较大小
-2.2 关系运算的C程序实现--作业
-第二周作业--作业
-2.3 逻辑运算的C程序实现
--计算结合性
--闰年.c
--自动购票问题.c
-2.3 逻辑运算的C程序实现--作业
-2.4 位运算的C程序实现
--讨论题:位运算
-2.5 几种很个别的运算
--讨论题
--讨论题
-2.5 几种很个别的运算--作业
-2.6 混合运算及数据类型转换
--讨论题:数据类型
-2.7 顺序结构程序实例
--Video
--三角形面积.c
--讨论题:工业产值
-2.7 顺序结构程序实例--作业
-3.1 程序中的路径选择实现
--打印学生成绩.c
--一元二次方程.c
-3.1 程序中的路径选择实现--作业
-3.2 路径中的再选择——嵌套判断
--例程
--讨论题:程序改错
-3.2 路径中的再选择——嵌套判断--作业
-3.3 复杂判断问题的C程序设计
--3.3 多级选择
--银行存款.c
--讨论题:多级选择
-3.4 多分支问题的C程序设计
--加减乘除运算.c
-3.4 多分支问题的C程序设计--作业
-3.5 GOTO的适当使用
-3.6 选择结构的程序实例
--3.6 程序展示
--计算第几天.c
--讨论题:输出奇数
--讨论题:计算税金
-3.6 选择结构的程序实例--作业
-第四周作业--作业
-4.1 需要重复执行的程序
--求和.c
--打印学生成绩.c
--统计录入速度.c
--求平均数.c
-4.1 需要重复执行的程序--作业
-4.2 至少要执行一次的循环
--n的阶乘.c
--字符分类统计.c
-4.2 至少要执行一次的循环--作业
-4.3 已知循环次数用for语句
--求和问题.c
--数列求和.c
--讨论题:循环语句
-4.3 已知循环次数用for语句--作业
-4.4 循环控制——简单循环应用
--水仙花数.c
--讨论题:死循环
--讨论题:猜数字
-循环结构的程序设计(一)--4.4 循环控制——简单循环应用
-4.5 循环的嵌套
--讨论题:程序运行
-4.5 循环的嵌套--作业
-4.6 break与continue
--最大素数.c
-4.6 break与continue--作业
-4.7 循环的综合应用
--数的排列组合.c
--鸡兔同笼.c
--打印空心字符.c
--讨论题:打印图形
--讨论题:计算闰年
-第六周作业
-第六周作业--作业
-5.1 同类有序数据处理问题
-5.2 一维数组的定义和引用
--数组定义.c
--数组初始化.c
--反向输出.c
--讨论题:对称数
-5.2 一维数组的定义和引用--作业
-5.3 一维字符串数组
--讨论题:编程
-5.4 字符串处理函数
--字符串反向.c
--字符串函数
-5.5 二维数组的定义与使用
-5.6 二维数组的输入输出
-5.6 二维数组的输入输出--作业
-5.7 二维数组的应用
--转置矩阵.c
--讨论题:修改程序
-5.8 二维字符数组
--5.8 单词排序
--单词排序.c
-5.8 二维字符数组--作业
-5.9 数组综合应用
--统计成绩.c
--统计字符次数.c
--讨论题:洗牌
-本期课程结束语
--end
-第八周编程作业
-《C语言程序设计(上)》期末复习参考
--html
-《C语言程序设计(上)》期末复习参考答案
--html