2019-1-2 翁恺老师C入门视频-启程

代码详见GitHub:






目录

第0周:程序设计与C语言
第1周:计算
第2周:判断
第3周:循环
第4周:循环控制
第5周:数据类型
第6周:函数
第7周:数组
第8周:指针与字符串






第0周:程序设计与C语言

第1周:计算

第2周:判断

第3周:循环

第4周:循环控制

第5周:数据类型

第6周:函数

第7周:数组

第8周:指针与字符串

第4周

------------------------------------------

第1周 -

1-变量定义:找零程序

2-常量定义:const

3-相加:同时多个scanf

4-身高换算:引入浮点类型

5-时间差:表达式引入

6-平均数:运算符优先级

7-交换两个变量:顺便学习调试功能

  • 注:Dev软件里的调试功能看起来是图形化的gdb

设置断点运行,停下来的地方是当前命令尚未执行的状态,按下一步才执行并跳转下一步
鼠标光标扫过的变量,可以从左侧栏看到当前状态下此变量的值。

8-plusplus:复合赋值+=、-=和递增递减++、--(递增递减必须要有变量)

讲了一些来源

  • a++: a+1以前的值
    ++a: a+1以后的值
    a: 都让a的值+1

9-scanf:如何正确地输入以及一系列可能的问题

scanf() - 括号里的内容是它期望你输入的东西,少了或者不一致就报错
两个变量中间写了逗号,输入时也要有逗号。前面有price,输入时也需要输入price。
后面有空格,或者\n,输入时也得随便给一个数字之类来填补这个空要不然就出错。
(空格不行,回车也不行 - 这两者代表虚无)

10:代码里的零0长得像希腊字母西塔θ的渊源

追溯到电报时代,与英文字母O区分,默认在数字0中间加一撇

------------------------------------------

第二周 -

1-时间差2.0:判断是否借位引入判断机制-if语句

  • 注意:从调试可以看出if语句判断为真或假时,程序执行的路子

2-关系运算符-作比较:运算结果是0或1

优先级:较低。比算术低,比赋值高
判断是否相等的==和!=比其他比较运算符低 5>3 == 6>4 :
连续的关系运算是从左到右的 6>5>4: 0

3-找零2.0版,年龄输入输出:判断、注释、流程图

注释:// c99独有 或 /* */
流程图的画法简单介绍

4-找零3.0版:引入if-else语句

流程图一个走这边,一个走那边

5-两数最大值:关于代码孰优孰劣的思考-要足够傻,让尽可能多的人读懂你的代码

6-计算薪水,判断成绩:if-else语句后面可以没有大括号,只做紧跟其后的第一句语句。


7-三数最大值:if-else嵌套时,不加大括号则if会找下面最近的else匹配,与缩进格式无关。

安全的方式是:if-else语句始终加上清晰的大括号,即使只有一条语句

(此处还有另一个例子不过很简单,为了验证if-else的自动匹配,故不再赘述)

8-分段函数:级联if-else if

单一出口问题:好处是这一段只管计算,最终得到的值,下一步再print,但也许还有别的用处呢。单一出口比较好。。

9-if语句的常见错误:

忘了大括号;if后面分号;错误使用==和=;else
==和=:error和warning的区别,能不能产生可执行程序的区别。学会尊重warning!
if()括号里只要是非0就会执行
代码风格:if-else加大括号,括号里缩进,前半个大括号放在上一行。

10-成绩分级:switch-case

  • 1-控制表达式只能是整数型的结果
  • 2-常量可以是常数或常数表达式,即结果是知道的那种。c99 only
  • 3-break分隔了switch内部,case只是开始执行的一个位置,一个路牌,直到遇到break停下来。

11-测试题:输入一个三位数,然后逆序输出

通过取余和整除弄到三个数字,然后乘以100和10并相加得到。
脑子里第一反应除了数组别的什么也没,怎么肥事。。。

------------------------------------------

------------------------------------------

------------------------------------------

------------------------------------------

【学习总结】C-翁恺老师-入门-总的更多相关文章

  1. 【学习总结】C-翁恺老师-入门-第0周<程序设计与C>

    [学习总结]C-翁恺老师-入门-总 1-首先按视频说的下载编辑器 <DevC++> 并一路默认设置: 安装包下载链接 (我有vc6.0不过预感告诉我老师要用类似CS50里那种命令行编辑器? ...

  2. 【学习总结】C-翁恺老师-入门-第4周<循环控制>

    [学习总结]C-翁恺老师-入门-总 1-阶乘:引入for循环 2-控制循环次数:初始化与控制条件的设置 任何一个for循环都可以写成一个while循环 for中的每一个表达式都是可以省略的:for(; ...

  3. 【学习总结】C-翁恺老师-入门-第3周<循环>

    [学习总结]C-翁恺老师-入门-总 1-求一个整数的位数:引入循环while 注:循环体内要有改变循环的机会,要不然就死循环了啊! 注:手写推测程序是否正确. 注:测试程序-边界:个位数.10.0.负 ...

  4. 听翁恺老师mooc笔记(1)--为何选择学习C

    知识点1:众多编程语言,为何选择C? 现在我们的同学喜欢java,也参加很多java的培训班,java是比较热门,但是C语言在工业界依然有重要的地位,在很多领域无可替代,几乎所有和硬件打交道的地方都得 ...

  5. 《程序设计入门——C语言》翁恺老师 第三周编程练习记录

    1 时间换算(5分) 题目内容: UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT减去8.现在,你的程序要读入一个整数,表示BJT的时和分.整数的个位和十位表示分,百位和千位表示小时.如果 ...

  6. 《程序设计入门——C语言》翁恺老师 第五周编程练习记录

    1 素数和(5分) 题目内容: 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推. 现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个 ...

  7. 《程序设计入门——C语言》翁恺老师 第四周编程练习记录

    1 奇偶个数(5分) 题目内容: 你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据.程序输出读到的数据中的奇数和偶数的个数. 输入格式: 一系列正整数,整数的范围是(0,1 ...

  8. 《程序设计入门——C语言》翁恺老师 第二周编程练习记录

    1 逆序的三位数(5分) 题目内容: 逆序的三位数: 程序每次读入一个正三位数,然后输出逆序的数字.注意,当输入的数字含有结尾的0时,输出不应带有前导的0.比如输入700,输出应该是7. 提示:用%1 ...

  9. 《程序设计入门——C语言》翁恺老师 第一周编程练习记录

    1 输出“Hello World”(5分) 题目内容: 请输出一行,内容为 Hello World 请注意大小写. 由于这一周只是简单地介绍了C程序的基本框架,还不能做很多事情,甚至还不能做数据的输入 ...

随机推荐

  1. 深入学习SpringMVC以及学习总结

    一.优点: 1.SpringMVC简化web程序开发; 2.SpringMVC效率很好(单例模式): 3.SpringMVC提供了大量扩展点,方便程序员自定义功能: ①.DispatcherServl ...

  2. Eclipse修改Maven仓库配置

    修改Apache-Maven\conf下的settings.xml文件 <?xml version="1.0" encoding="UTF-8"?> ...

  3. jQuery设置元素的readonly和disabled属性

    jQuery的api中提供了对元素应用disabled和readonly属性的方法,如下: 1.readonly    $('input').attr("readonly",&qu ...

  4. Lingo求解线性规划案例1——生产计划问题

    凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 说明: Lingo版本:                            某工厂明年根据合同,每个季度末 ...

  5. linux编译64bitHadoop (eg: ubuntu14.04 and hadoop 2.3.0)

    Hadoop官网提供的编译好的hadoop-2.3.0.tar.gz二进制包是在32位系统上编译的,在64系统上运行会有一些错误,比如: WARN util.NativeCodeLoader: Una ...

  6. Docker卸载镜像

    Linux服务器Docker卸载某个镜像: 首先输入命令docker images查看当前docker下有多少镜像: 1 [root@iZwz9a191mdam4di3dozk3Z ~]# docke ...

  7. 【JAVA8】双冒号

    现在JDK双冒号是: public class MyTest {     public static void  printValur(String str){         System.out. ...

  8. [matlab] 15.罚函数降维

    求非线性规划 min f(x)= x(1)^2 + x(2)^2 + 8 s.t. { x(1)^2-x(2)>=0 , -x(1) - x(2)^2 +2 = 0, x(1)>=0 ,x ...

  9. visual studio发布到远程服务器的IIS

    visual studio发布到远程服务器的IIS 1.打开项目,选中发布的项目. 2.右键发布的项目,点击菜单中的“发布”,弹出发布配置窗体,如下图 3.选择“自定义”,如下图 4.填写发布配置的名 ...

  10. 【vue】vue +element 搭建项目,使用el-date-picker组件遇到的坑

    1.html <el-form-item prop="dateTime"> <el-date-picker v-model="messageDataFo ...