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. Turtle绘制带颜色和字体的图形(Python3)

    转载自https://blog.csdn.net/wumenglu1018/article/details/78184930 在Python中有很多编写图形程序的方法,一个简单的启动图形化程序设计的方 ...

  2. puppet 横向扩展(一)

    目录 1. 概述 2. 实验环境 3. 实验步骤 3.1. 创建puppetmaster的rack环境 3.2. 配置文件设置 3.3. 补充说明 3.4. 测试配置结果 3.4.1. 默认的负载均衡 ...

  3. March 04th, 2018 Week 10th Sunday

    Tomorrow never comes. 我生待明日,万事成蹉跎. Most of my past failures can be chalked up to the bad habit of pr ...

  4. 爬楼梯的golang实现

    假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 输入: 输出: 解释: 有两种方法可以爬到楼顶. ...

  5. JavaScript的基本包装类型概述与基本包装类型_Number类型

    JavaScript的基本包装类型示例 为了便于操作基本类型值,javaScript 提供了 3 个特殊的引用类型:Boolean.Number和 String. 这些类型与其他引用类型相似,但同时也 ...

  6. SQlite的结构——存储管理

    在今天的商业应用中,主要有两种基本类型的DBMS(数据库管理系统)存储管理器: (1)DBMS直接与底层的面向磁盘的块模式设备驱动程序进行交互(通常称为原始模式访问); (2)DBMS使用标准的OS文 ...

  7. 关于 chrome canary X64 在 win7 64bit 下面缺少openvr_api.dll的解决方法

    在github上下载openvr_api.dll放到chrome的安装目录下就可以. 其实放到系统目录下最好,以后其他程序要使用的时候也能使用的到. https://github.com/ValveS ...

  8. 11g SPA (sql Performance Analyze) 进行升级测试

    注;转自http://ju.outofmemory.cn/entry/77139 11G的新特性SPA(SQL Performance Analyze)现在被广泛的应用到升级和迁移的场景.当然还有一些 ...

  9. PHP 3 运算符 if...else...elseif 语句

    <?php $x=10; $y=6; echo ($x + $y); // 输出 16 echo ($x - $y); // 输出 4 echo ($x * $y); // 输出 60 echo ...

  10. 一)surging 微服务框架使用系列之surging 的准备工作rabbitmq安装(转载 https://www.cnblogs.com/alangur/p/8339905.html)

    (一)surging 微服务框架使用系列之surging 的准备工作rabbitmq安装   (1)下载erlang: http://www.erlang.org/download/otp_win64 ...