文档章节

第04天C语言(00):笔记总结

lyh2017iOS
 lyh2017iOS
发布于 2017/07/08 10:10
字数 1776
阅读 0
收藏 0

#####01-Switch-基本概念

 if格式:

  if(条件表达式)

  {

     语句...

  }

  

  switch格式:

  

  switch(条件表达式)

  {

     case 整数: // case可以有一个或多个

         语句;

         break;

      case 整数: // case可以有一个或多个

         语句;

         break;

     default:   

         语句;

         break;

  

  

  }

 1.拿到条件表达式返回值(注意返回值 必须是整型)

  2.利用条件表达式的返回值 和 switch 后面大括号的每一个case进行比较, 判断条件表达式的返回值 和  case后面的整数是否相等 条件表达式 == 整数

  3.如果条件表达式的返回值 等于 某一个case后面的整数, 那么就会执行该case后面的语句

  4.执行完语句 之后 如果遇到break 就会结束整个switch语句, 也就是说后面的所有语句 都不会被执行

  5.如果前面的case 不满足, 也就是前面的case的整数 和 条件表达式的返回值 不相等 就会 继续判断后面的case

  6.如果前面的所有case都不满住, 就会执行 default后面的语句

  

 /*

  结束switch语句

  1.遇到break

  2.执行到switch对应大括号的结束 }

  */

 // break 的作用 用于结束switch语句

 //没有写break  注意 : 如果switch中有一个case满足了条件, 那么其他所有的case 和 default都会失效

#####02-Switch-注意点

 1.switch的条件表达式注意点

  switch的条件表达式 必须是返回整数的表达式, 也就是说()中只能放整数

  或者写能够转换为证书的类型也可以 例如char可以转换int类型, 所以写char也可以

  

   2.case的取值

   switch中, case后面只能放返回值是整数的表达式或者整数,或者能够转换为整数的类型

   case的取值 不能重复

   case后面不能放变量,因为系统在编译的时候对 switch后面所有的case进行优化, 会根据case后面的常量值,生成一张取值表

  

   default的位置问题

   switch的default可以随便放

   无论default写在什么地方, 他都会最后执行(只有前面所有的case都不满住的情况下才会执行)

   只要有某一个case满足, 那么所有的case都会失效

   同理 : 只要default满足,那么所有的case都会失效

#####03-Switch-练习1

 什么时候用switch,什么时候用if

  在开发中一般情况下用if, if比较灵活

  如果说对一些固定的值进行判断, 并且这些值得数量不多的情况,可以使用switch

  从理论上来说,switch的性能效率比if高

#####04-Switch-练习2

 getchar(); // 专门用来获取字符,或从输入缓冲区中获取字符

#####05-while-基本概念

while (条件表达式)

 {

    语句...

 }

  while 是对给定的条件进行判断, 如果条件满足,就执行while后面大括号的内容,执行完毕之后会再次判断条件表达式,如果满足会再次执行while后面大括号的内容,直到 条件表达式不满足为止

  

  术语 : while后面大括号的内容, 称之为 循环体

  while的应用场景 : 当我们需要反复的执行 某一段代码的时候 就可以使用while

  注意点 : 和if一样,如果条件表达式一开始就不满足,那么循环体就不会被执行

#####06-累加思想

 注意: break只能用在switch和循环结果中, 离开这两个东西 没有任何的效果

 思想 : 累加思想, 通过循环来进行累加

#####07-计数器思想

 计算器思想,如果以后开发中想获取什么中有多少个什么,第一个时间就要想到计算器思想

#####08-while-练习3

 使用系统的声音 1>导入stdlib.h 2>使用system的方法

 system("say huatenghudong");

#####09-While-注意点

 最简单的死循环 while (1);

#####10-break-基本概念

 用于跳出循环

#####11-continue-关键字

 只要看到continue,那么后面所有语句都不会执行,会执行再次去判断条件表达式

#####12-dowhile

do

 {

 }while(条件表达式);

  do while和while的区别;

  while如果条件表达式 一开始就不满足, 那么循环体永远不会被执行

  do while如果条件表达式一开始就不满足, 同样会执行一次 循环体

  也就是说, 无论条件表达式是否满足, do while始终会执行一次循环体

  一般情况下,能用while就用while

  do while一般用于校验

  ---

  int number = -1;

  do {

  printf("请输入一个整数\n");

  scanf("%i",&number);

  } while (number <= 0);

#####13-for循环-基本概念

for (初始化表达式;条件表达式;循环后增值表达式)

 {

    语句;

    ...

 }

  条件表达式 : 和 while,dowhile一样,只有条件满足才会执行循环体

  初始化表达式 : 在整个for循环的生命周期中,初始化表达式 只会执行一次

  循环后增值表达式 : 会在每次循环体之后 完毕之后调用一次

#####14-for和while对比

 while

 什么时候用while?

 如果用于控制循环的增量 在循环执行完毕之后换需要使用,那么可以使用while

 for

 如果用于控制循环的增量 在循环执行完毕之后不需要使用了, 那么可以使用for

#####15.for循环-注意点

 1.任何数值都有真假性

 2.for也可以省略大括号,for省略大括号的时候,只会执行离他最近的一条语句

 3.作用域混乱

 4.空语句

 5.其实,初始化表达式 和 循环后增量表达式 可以写多条语句, 语句之间用,链接

 6.作用域问题

 7.最简单的死循环

#####16-循环嵌套-基本概念

 结论 : 循环嵌套执行的次数 等于 : 外循环执行的次数 * 内循环执行的次数

#####17-循环嵌套-练习1

 外循环控制行数

 内循环控制列数

#####18-循环嵌套-练习2

for (初始化表达式; 条件表达式 ;循环后增值表达式) {

 }

 

 尖尖朝上 : 修改内循环的 条件表达式

 尖尖朝下 : 修改内循环的 初始化表达式

 

  ---

  

  1.倒三角形

  ***

  **

  *

  for (int i = 0; i < 3; i++) {

     for (int j = i; j < 3; j++) {

         printf("*");

     }

     printf("\n");

  }

  

  ---

  

  2.正三角形

  for (int i = 0; i < 3; i++) {

     for (int j  = 0; j <= i; j++) {

         printf("*");

     }

     printf("\n");

  }

#####19-循环嵌套-练习3

    --*

     -***

     *****

涉及到正三角 和 倒三角的组合使用

     for (int i = 0; i < 3; i++) {

         for (int j = i; j < 2; j++) {

             printf("-");

         }

         // 0 * 2 = 0 (0)    1颗星

         // 1 * 2 = 2 (0~2) 3颗星

         // 2 * 2 = 4(0~4) 5颗星

         for (int k = 0; k <=i * 2; k++) {

             printf("*");

         }

         

         printf("\n");

     }

#####20-99乘法表

     for (int i = 1; i <= 9; i++) {

         for (int j = 1; j <= i; j++) {

             // 1 * 1 = 1

             //

             printf("%i * %i = %i\t",j,i,i*j);

         }

         printf("\n");

     }

---

#####快捷键

修改某一块的命名 command + control + e

© 著作权归作者所有

共有 人打赏支持
lyh2017iOS
粉丝 1
博文 357
码字总数 137380
作品 0
朝阳
JavaScript 30天每日效果图

JavaScript 30天每日效果图 在Github上看到了wesbos的一个Javascript30天挑战的repo,旨在使用纯JS来进行练习,不允许使用任何其他的库和框架,该挑战共30天,我会在这里复现这30天遇到的挑战...

黎跃春
2017/07/19
0
0
5.22-5.30一周总结

过去总结 所学总结 能想起来的部分 周一:雕爷和他吃枣药丸的牛排 周二:柯洁AlphaGo第一盘 周三:会计学pre:现金流量表; 周四:柯洁AlphaGo第二盘;ndarray,plot plt.plot(x,y) 周五:动...

idealclover
2017/05/31
0
0
C语言中常用计时方法总结

转载 http://blog.csdn.net/fzywj/article/details/8109368 C语言中常用计时方法总结 1. time() 头文件:time.h 函数原型:timet time(timet * timer) 功能:返回以格林尼治时间(GMT)为标准...

kcyyc007
2017/12/13
0
0
日常生活 -- 开博二周年

眼看2017年即将结束,CSDN博客也开通两年了。回顾这两年,感慨颇多。和多数人一样,一开始也是将CSDN作为一个查阅工具,当看到好的博文就会转载。但这就造成一个结果,对于那些转载文章,更多...

qq_29350001
2017/12/03
0
0
C语言书籍资料汇总

我汇总出自己收藏的C语言方面的书籍资料,方便后期使用,或许你也用的到。 以下内容,有链接的都可以下载。 一、书籍 元老级别的书籍: C程序设计语言.pdf (c语言之父) C Primer plus 第5...

BjarneCpp
2017/11/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

xilinx资源

本系列教学视频由赛灵思高级战略应用工程师带领你:从零开始,一步步深入 掌握 HLS 以及 UltraFAST 设计方法,帮助您成为系统设计和算法加速的大拿! http://www.eetrend.com/topics/2018-0...

whoisliang
30分钟前
0
0
=====BJmeter性能测试小接=====

一、性能测试分类 1、负载测试: 通过逐步加压的方法,达到既定的性能阈值的目标,阈值的设定应是小于某个值,如cpu使用率小于等于80% 2、压力测试: 通过逐步加压的方法,使得系统的某些资源...

覃光林
33分钟前
1
0
企业级开源四层负载均衡解决方案--LVS

网盘链接 企业级开源四层负载均衡解决方案--LVS 本课程将在Linux环境下,学习配置使用LVS,对Web集群和MySQL集群进行负载均衡,并结合利用Keepalived实现负载均衡器的高可用,实现对后端Rea...

qq__2304636824
39分钟前
2
0
Windows上安装Spacemacs

emacs安装 下载地址emacs 安装比较简单,解压后执行\bin\addpm.exe即可 emacs配置 emacs的默认配置文件路径和.emacs.d文件夹都是在Windows主目录下的 C:\Users\Administrator\AppData\Roami...

yxmsw2007
55分钟前
0
0
OSChina 周一乱弹 —— 鱼生不值得

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @瘟神灬念:分享新裤子的单曲《没有理想的人不伤心 (Remix版)》: 《没有理想的人不伤心 (Remix版)》- 新裤子 手机党少年们想听歌,请使劲儿戳...

小小编辑
今天
228
9

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部