ioS基础学习第4天

  while循环的运行原理:

   1.如果一开始条件就不成立,永远不会执行循环体。

   2.如果条件成立,就会执行一次循环体,执行完毕,再次判断条件是否成立。

  break:直接结束整个while循环。

  continue:结束当前的循环体,进入下一次循环体的执行。

  定义while循环的步骤:先确定需要重复执行的操作,再确定约束条件。

  while()后面不要加分号,否则当条件成立时会陷入死循环。

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

  while和do-while的区别:

   1. 很多情况下,while和do while可以互换。

   2. while特点:如果一开始的条件不成立,永远不会执行循环体。

      do while特点:不管一开始的条件是否成立,至少会执行一次循环体。

   3. 最好使用while。

/*
 for (语句1; 条件; 语句2)
 {
    循环体
 }
 
 语句1:初始化语句
 语句2:增量语句(执行完循环体后再执行的语句)
 
 1.for一开始就会执行一次语句1(整个for循环只会执行一次)
 2.判断条件是否成立,如果条件成立,就会执行一次循环体,然后就会执行语句2,再次判断条件是否成立
 */

  不要随便在for()后面写分号。

    /* 错误:变量a的作用域不明确
     如果要在循环体中定义新的变量,必须用大括号{}包住
    for (int i=0; i<5; i++)
        int a = 10;
    */
    // 循环体内可以定义与循环条件中同名的变量
    for (int i = 0; i < 5; i++) {
        int i = 10;
    }

  最简单的利用for循环实现的死循环:for( ; ; );

/*
 break:
 1.使用场合
 1> switch语句:退出整个switch语句
 2> 循环结构:退出整个循环语句
 2.注意点
 只对最近的循环结构有效
 
 continue:
 1.使用场合
  循环结构:结束当前这次的循环体,进入下一次循环体
 2.注意点
  只对最近的循环结构有效
 */

  一般优先使用for循环,然后再考虑while,最后再考虑do while。

  什么情况下定义函数:添加一个常用的新功能。

/*
 参数注意点
 1.形式参数:定义函数时函数名后面中的参数,简称形参
 2.实际参数:调用函数式传入的具体数据,简称实参
 3.实参个数必须等于形参个数
 4.函数体内部不能定义和形参一样的变量
 5.如果是基本数据类型作为函数形参,纯粹是值传递,修改函数内部形参的值,并不会影响外面实参的值
 6.一个函数可以没有形参,也可以有无限多个形参
 */
/*
 return的作用:
 1> 退出函数
 2> 返回一个具体值给函数调用者
 
 返回值注意点
 1> void代表没有返回值
 2> 如果没有明确说明返回值类型,默认是返回int类型
 3> 就算明确声明了返回值类型,也可以不返回任何值
 
 默认情况下,C语言不允许两个函数的名称一样
 */
/* 
 定义函数的步骤
 1> 根据函数的作用,起一个有意义的名称
 2> 确定函数的形参个数
 3> 确定函数的返回值
 */
/*
 1.默认情况下,不允许有函数的名称一样
 2.函数不能嵌套定义
 3.函数不能重复定义,但是可以重复声明
 4.如果有函数的声明,没有函数的定义
 1> 编译可以通过,因为编译器只会检测语法合不合理,并不会检测函数有没有定义
 2> 链接报错,因为链接的时候会检测函数是否定义
 */

 如果既没有函数的声明,也没有函数的定义,编译能通过。

/*
 include
 1> 作用:拷贝右边文件的所有内容到#include所在的位置
 2> 自定义的文件用"",系统自带的文件用<>
 3> #include <stdio.h>的目的:拷贝printf函数的声明
 */
/*
链接:把项目中所有相关联的.o目标文件、C语言函数库合并在一起,生成可执行文件
1. 函数的定义放.c文件,函数的声明放.h文件
2. 如果要使用某个.c文件中定义的函数,只需要#include这个.c文件对应的.h文件
3. .h文件的作用:被别人拷贝。编译链接的时候不需要管.h文件
4. cc xx.o xxx.o 将多个目标文件链接在一起
   cc xx.c xxx.c 将多个源文件编译、链接
*/
    // \n是一个转义字符,回车键
    // \t tab键
    // \" 一个双引号
    // printf函数返回的字符串常量的字符数,并不是字数
    // 1个汉字占据3个字符

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。