当前位置: 首页 > news >正文

浏览器正能量网站免费网站做有偿广告需要什么有序

浏览器正能量网站免费,网站做有偿广告需要什么有序,企业所得税税负率怎么算的,做网站论坛 前置许可通常来说#xff0c;C语言是结构化的程序设计语言#xff0c;这里的结构包括顺序结构、选择结构、循环结构#xff0c;C语言能够实现这三种结构#xff0c;如果我们仔细分析#xff0c;我们日常生活中所见的事情都可以拆分为这三种结构或者它们的组合。 下面我会仔细讲解我…        通常来说C语言是结构化的程序设计语言这里的结构包括顺序结构、选择结构、循环结构C语言能够实现这三种结构如果我们仔细分析我们日常生活中所见的事情都可以拆分为这三种结构或者它们的组合。 下面我会仔细讲解我们如何使用if、switch实现分支结构使用for、while、do while实现循环结构。 # if语句 1 if         if 语句的语法形式如下:   if( 表达式 )             语句         表达式成⽴为真则语句执⾏表达式不成⽴为假则语句不执⾏。         在C语⾔中0为假⾮0表⽰真也就是表达式的结果如果是0则语句不执⾏表达式的结果如果不是0则语句执⾏。         例输⼊⼀个整数判断是否为奇数 #include stdio.h int main() {int num 0;scanf(%d, num);if(num % 2 1)printf(%d 是奇数\n, num);return 0; }         那么if语句流程是什么样的呢         下图即为if语句的执行流程图 2 else          else是与if配合使用的如果⼀个数不是奇数那就是偶数了如果任意⼀个整数我们要清楚的判断是奇数还是偶数怎么表 ⽰呢这⾥就需要 if...else... 语句了语法形式如下 if( 表达式 )                 语句1         else                 语句2 例⼦输⼊⼀个整数判断是否为奇数如果是奇数打印是奇数否则打印数偶数。 #include stdio.h int main() {int num 0;scanf(%d, num);if(num % 2 1)printf(%d 是奇数\n, num);elseprintf(%d 是偶数\n, num);return 0; } 练习输⼊⼀个年龄 18岁就输出成年否则就输出未成年 #include stdio.h int main() {int age 0;scanf(%d, age);if(age18)printf(成年\n);elseprintf(未成年\n);return 0; } 3 分⽀中包含多条语句         在 if 和 else 语句中我们默认一个if / else语句都只控制⼀条语句⽐如         对于当代学生来说非常重视的恋爱年龄问题 #include stdio.h int main() {int age 0;scanf(%d, age);if(age 18)printf(成年了\n);printf(可以谈恋爱了\n);return 0; }         如果你自己进行了上面代码的尝试你会发现输⼊的值不管是18 还是⼩于18可以交⼥朋友了 都会打印在屏幕上。         原因是 if 语句只能控制⼀条语句就是 距离这个if语句最近的下方的  printf( 成年了 \n); if语句为真则打印成年了if语句为假则不打印对于 printf( 可以谈恋爱了 \n); 是独⽴存在的不管if语句的条件的真假都会被执⾏。那如果我们要if语句同时控制2条语句怎么办呢那就要使⽤ {} 将代码括起来else 后也可以跟上⼤括号。如下 #include stdio.h int main() {int age 0;scanf(%d, age);if(age 18) //if 后使⽤{} 控制多条语句-这个块也叫程序块或者复合语句{printf(成年了\n);printf(可以交⼥朋友了\n);}return 0; }         这里复合语句已在之前的博客讲过了如果还不跳了解可以回去复习一下。         上面的代码并不完整我们进一步改写后代码如下 #include stdio.h int main() {int age 0;scanf(%d, age);if(age 18) //if 后使⽤{} 控制多条语句-这个块也叫程序块或者复合语句{printf(成年了\n);printf(可以交⼥朋友了\n);}else //else 后使⽤{}控制多条语句-这个块也叫程序块或者复合语句{printf(未成年\n);printf(不可以早恋哦\n);}return 0; }         了解之后大家可以自己进行尝试编写。 4 if嵌套         在上面的分支语句中我们看到了双分支的情况那么如果有多种分支的情况下我们又该怎么解决呢在 if else 语句中 else 可以与另⼀个 if 语句连⽤构成多重判断。这样的连用方式就成为if 嵌套。         ⽐如要求输⼊⼀个整数判断输⼊的整数是0还是正数或者负数。请看如下代码 #include stdio.h int main() {int num 0;scanf(%d, num);if(num 0)printf(输⼊的数字是0\n);else if(num 0) //这⾥的if 相当于嵌套在els语句中形成了嵌套结构printf(输⼊的数字是正数\n);elseprintf(输⼊的数字是负数\n);return 0; }         红圈中的部分就是嵌套在前⾯的 else ⼦句中的构成了嵌套的if语句。         再举个栗子输⼊⼀个整数如果是正数再判断是奇数还是偶数并输出如果不是正数则输出⾮正数。 #include stdio.h int main() {int num 0;scanf(%d, num);if(num0){if(num%2 0)printf(偶数\n);elseprintf(奇数\n);}else{printf(⾮正数\n);}return 0; }         同上上⾯红圈中的代码也是 if 嵌套语句值得一提的是两者的区别是前者嵌套在else 之后后者则是嵌套在 if 之后。         学会了嵌套if语句之后我们就可以完成更多复杂逻辑的判断了。 练习 输⼊⼀个⼈的年龄 如果年龄 18 岁打印 少年 如果年龄在 18 岁⾄ 44 岁打印 ⻘年 如果年龄在 45 岁⾄ 59 岁打印 中⽼年 如果年龄在 60 岁⾄ 89 岁打印 ⽼年 如果 90 岁以上打印 老寿星 一般一道题会有许多种编写方式下面我写了两种共各位参考 //⽅法1 #include stdio.h int main() {int age 0;scanf(%d, age);if(age18)printf(少年\n);else if(age44)printf(⻘年\n);else if(age59)printf(中⽼年\n);else if(age90)printf(⽼年\n);elseprintf(⽼寿星\n);return 0; } //方法二 //带上⼤括号更容易看明⽩ #include stdio.h int main() {int age 0;scanf(%d, age);if(age18){printf(少年\n);}else{if(age44){printf(⻘年\n);}else{if(age59){printf(中⽼年\n);}else{if(age90)printf(⽼年\n);elseprintf(⽼寿星\n);}}}return 0; } 5 悬空else问题        在复杂的代码中 多个 if 和 else可能会把我们绕晕  我们可以记住这样⼀条规则 else 总是跟最接近的 if 匹配。         我们⾸先从下⾯代码开始 #include stdio.h int main() {int a 0;int b 2;if(a 1)if(b 2)printf(hehe\n);elseprintf(haha\n);return 0; }         程序运⾏的结果是啥很多初学者第一眼会判断 a 是 0不等于 1 那就执⾏ else ⼦句打印 haha但是当你去运⾏代码输出的结果是啥都不输出。当然上面的代码中的else被我对齐了如果你写的代码都被对其在同一行的话这个代码就非常具有迷惑性了同时这个问题也体现出了写代码的格式风格也是相当重要的望各位注意         如果我们希望else确实和第⼀个if匹配可以这样修改代码 #include stdio.h int main() {int a 0;int b 2;if(a 1){if(b 2)printf(hehe\n);}else{printf(haha\n);}return 0; }         只要带上适当的⼤括号代码的逻辑就会更加的清晰所以⼤家以后在写代码的时候要注意括号的使⽤让代码的可读性更⾼。 # 关系操作符  在C 语⾔⽤于⽐较的表达式称为 “关系表达式”relational expression⾥⾯使⽤的运算符就称为“关系运算符”relational operator主要有下⾯6个。  • ⼤于运算符 • ⼩于运算符 • ⼤于等于运算符 • ⼩于等于运算符 • 相等运算符 • ! 不相等运算符         关系表达式通常返回 0 或 1 表⽰真假。在C 语⾔中 0 表⽰假所有⾮零值表⽰真。⽐如 20 12 返回 1 12 20 返回 0 。         使用关系表达式最多的是if 或 while 语句例如         if (x 3 )          {         printf ( x is 3.\n );           } 注意 相等运算符 与赋值运算符 是两个不⼀样的运算符不要混淆。有时候可能会不⼩⼼写出下⾯的代码写错的代码可以运⾏但很容易出现意料之外的结果。                   if (x 3 )         上面if语句的 原意是 x 3 但是不⼩⼼写成 x 3 。这个式⼦表⽰对变量 x 赋值 3 它的返 回值为 3 所以 if 判断总是为真。为了防⽌出现这种错误有的程序员喜欢将变量写在等号的右边即  if ( 3 x) 这样写错的时候编译器会报错。 另⼀个需要避免的错误是多个关系运算符不宜连⽤。如 i j k 连续使⽤两个⼩于运算符。这是合法表达式不会报错但是通常达不到想要的结果即不是保证变量 j 的值在 i 和 k 之间。因为关系运算符是从左到右计算所以实际执⾏的是  (i j) k  。  i j 返回 0 或 1 所以最终是 0 或 1 与变量 k 进⾏⽐较。如果想要判断变量 j  的值是否在 i 和 k 之间应该使⽤  i j j k 这种写法。          ⽐如我们输⼊⼀个年龄如果年龄在18岁~36岁之间我们输出⻘年。如果我们按照上面的错误讲解写代码展示为 #include stdio.h int main() {int age 0;scanf(%d, age);if(18age36){printf(⻘年\n);}return 0; }         你会发现在运行时无论你输入的是不是范围之内的数都会打印青年。这是因为我们先拿18和age中存放的10⽐较表达式1810为假 18age 的结果是0再拿0和36⽐较036为真所以打印了⻘年 如果你输入的大于18表达式返回的为1136依旧成立。正确代码的演示 #include stdio.h int main() {int age 0;scanf(%d, age);if(age18 age36){printf(⻘年\n);}return 0; }         以上就是关于操作符中我们需要掌握的剩下的只要按照字⾯意思理解使⽤即可。 # 条件操作符  条件操作符也叫三⽬操作符需要接受三个操作数的形式为 exp1 ? exp2 : exp3         条件操作符的计算逻辑是如果 exp1 为真 exp2 计算计算的结果是整个表达式的结果如果exp1 为假 exp3 计算计算的结果是整个表达式的结果。         练习1使⽤条件操作符表⽰下⾯代码的逻辑 #include stdio.h int main() {int a 0;int b 0;scanf(%d %d, a, b);if (a 5)b 3;elseb -3;printf(%d\n, b);return 0; } //改造后 #include stdio.h int main() {int a 0;int b 0;scanf(%d, a);b a5 ? 3:-3;printf(%d\n, b);return 0; }         练习2使⽤条件表达式实现找两个数中较⼤值。 #include stdio.h int main() {int a 0;int b 0;scanf(%d %d, a, b);int m ab ? a : b;printf(%d\n, m);return 0; } 这里学会使用即可作用与if语句等效。 # 逻辑操作符 , || ,   逻辑运算符提供逻辑判断功能⽤于构建更复杂的表达式主要有下⾯三个运算符。                   • ! 逻辑取反运算符改变单个表达式的真假。                                                                            • 与运算符就是并且的意思两侧的表达式都为真则为真否则为假。 • || 或运算符就是或者的意思两侧⾄少有⼀个表达式为真则为真否则为假。 1 逻辑取反运算符    ⽐如我们有⼀个变量叫 flag ,如果flag为假要做⼀个什么事情就可以这样写代码 #include stdio.h int main() {int flag 0;if(!flag){printf(do something\n);}return 0; }如果 flag 为真 !flag 就是假如果 flag 为假 !flag 就是真所以上⾯的代码的意思就是 flag 为真执⾏if语句中的代码。 2 与运算符           就是与运算符也是并且的意思 是⼀个双⽬操作符使⽤的⽅式是 a b , 两边的表达式都是真的时候整个表达式才为真只要有⼀个是假则整个表达式为假。         ⽐如如果我们说⽉份是3⽉到5⽉是春天那么代码就是 #includestdio.h int main() { int month 0; scanf(%d, month); if(month 3 month 5) {printf(春季\n); }return 0; } 3 或运算符           || 就是或运算符也就是或者的意思 || 也是⼀个双⽬操作符使⽤的⽅式是 a || b || 两边的表达式只要有⼀个是真整个表达式就是真两边的表达式都为假的时候才为假。⽐如我们说⼀年中⽉份是12⽉或者1⽉或者2⽉是冬天那么代码就是 #includestdio.h int main() {int month 0;scanf(%d, month);if(month 12 || month1 || month 2){printf(冬季\n);}return 0; } 4 综合使用          练习闰年的判断 闰年判断的规则为 1. 能被4整除并且不能被100整除是闰年 2. 能被400整除是闰年 这里我也写了两种方法供各位参考 #include stdio.h //代码1 int main() {int year 0;scanf(%d, year);if(year%40 year%100!0)printf(是闰年\n);else if(year%4000)printf(是闰年\n);return 0; }//代码2 int main() {int year 0;scanf(%d, year);if((year%40 year%100!0) || (year%4000))printf(是闰年\n);return 0; } 5 短路         在C语⾔逻辑运算符的使用中它总是先对左侧的表达式求值再对右边的表达式求值这个顺序是保证的。如果左边的表达式满⾜逻辑运算符的条件就不再对右边的表达式求值。这种情况称为“短路”。         如前⾯的代码:  if (month 3 month 5 )    表达式中 的左操作数是 month 3 右操作数是 month 5 ,当左操作数 month 3 的 结果是0的时候即使不判断 month 5 整个表达式的结果也是0不是春季。所以对于操作符来说左边操作数的结果是0的时候右边操作数就不再执⾏了。         对于 || 操作符我们结合前⾯的代码 if (month 12 || month 1 || month 2)    如果month 12则不⽤再判断month是否等于1或者2整个表达式的结果也是1是冬季。所以 || 操作符的左操作数的结果不为0时就⽆需执⾏右操作数。         这里为大家总结了口诀全真才真一假则假。                                                 ||   全家才假一真则真。         像这种仅仅根据左操作数的结果就能知道整个表达式的结果不再对右操作数进⾏计算的运算称为短路求值。         练习阅读代码计算代码输出的结果 #include stdio.h int main() {int i 0,a0,b2,c 3,d4;i a b d;//i a||b||d;printf(a %d\n b %d\n c %d\nd %d\n, a, b, c, d);return 0; }         这道题可以帮助各位锻炼一下上面讲的知识点在这里不再细讲如果还有什么疑问的话欢迎大家私信我。 #  switch 语句 switch语句是除if语句之外的第二类分支结构语句。本质上讲switch 语句是⼀种特殊形式的 if...else 结构⽤于判断条件有多个结果的情况。它把多重的 else if 改成更易⽤、可读性更好的形式。形式为 switch (expression) { case value1: statement case value2: statement default : statement } 上⾯代码中根据表达式 expression 不同的值执⾏相应的 case 分⽀。如果找不到对应的值就执⾏ default 分⽀。在这要注意 • switch 后的 expression 必须是整型表达式。 • case 后的值必须是整形常量表达式。 1 if语句和switch语句的对⽐ 练习输⼊任意⼀个整数值计算除3之后的余数         如果使⽤if语句完成如下 #include stdio.h int main() {int n 0;scanf(%d, n);if(n%3 0)printf(整除余数为0\n);else if(n%3 1)printf(余数是1\n);elseprintf(余数是2\n);return 0; }         而如果使⽤switch语句改写就可以是这样的 #include stdio.h int main() {int n 0;scanf(%d, n);switch(n%3){case 0:printf(整除余数为0\n); break;case 1:printf(余数是1\n); break;case 2:printf(余数是2\n); break;}return 0; }         上述的代码中我们要注意的点有 1. case 和后边的数字之间必须有空格。 2. 每⼀个 case 语句中的代码执⾏完成后需要加上 break 才能跳出这个switch语句。 2 switch语句中的break         前⾯的代码中如果我们去掉case语句中的break会出现什么情况呢 #include stdio.h int main() {int n 0;scanf(%d, n);switch(n%3){case 0:printf(整除余数为0\n); case 1:printf(余数是1\n); case 2:printf(余数是2\n); }return 0; }         你会发现7除以3本来余数是1但是我们发现程序运⾏的结果多了⼀⾏“余数是2”的打印。 原因是 switch 语句也是分⽀效果的只有在 switch 语句中使⽤ break 才能在跳出 switch 语 句如果某⼀个 case 语句的后边没有 break 语句代码会继续往下执⾏有可能执⾏其他 case  语句中的代码直到遇到 break 语句或者 switch 语句结束。就⽐如上⾯的代码就执⾏了 case  2 中的语句。 所以在 switch 语句中 break 语句是⾮常重要的能实现真正的分⽀效果。 当然 break 也不是每个 case 语句都得有这就得根据实际情况来看了。 练习 输⼊⼀个1~7的数字打印对应的星期⼏ 例如 输⼊1 输出星期⼀ 输⼊2 输出星期⼆ 输⼊3 输出星期三 输⼊4 输出星期四 输⼊5 输出星期五 输⼊6 输出星期六 输⼊7 输出星期天 代码展示 #include stdio.h int main() {int day 0;scanf(%d, day);switch(day){case 1printf(星期⼀\n);break;case 2:printf(星期⼆\n);break;case 3:printf(星期三\n);break; case 4:printf(星期四\n);break; case 5:printf(星期五\n);break;case 6:printf(星期六\n);break;case 7:printf(星期天\n); break;}return 0; } 如果需求发⽣变化变为   输⼊1-5输出的是“⼯作⽇”;   输⼊6-7输出“休息⽇” 那么代码可以修改为 #include stdio.h int main() {int day 0;scanf(%d, day);switch(day){case 1case 2:case 3:case 4:case 5:printf(⼯作⽇\n);break;case 6:case 7:printf(休息⽇\n);break;}return 0; }         因此你会发现在实际问题中应该根据实际的情况来处理在代码中判断是否使⽤ break 或者在哪⾥使⽤ break 才能正确完成实际的需求。 3 switch语句中的default          在使用switch语句的时候我们经常可能遇到一种情况比如switch后的表达式中值无法匹配代码中的case语句时这时候要不就不做处理要不就得在switch语句中加入default子句。说白了default的作用就是在case中没有对应分支语句时default会承担case的责任并继续执行下方语句。其结构是         switch (expression)          {                 case value1:                                  statement                 case value2:                                 statement                 default :                                 statement         }                 如果switch 后边的 expression 的结果不是 value1 也不是 value2 的时候就会执⾏ default ⼦句。 就⽐如前⾯做的打印星期的练习如果 day 的输⼊不是1~7的值如果我们要提⽰输⼊错误则可 以这样完成代码 #include stdio.h int main() {int day 0;scanf(%d, day);switch(day){case 1case 2:case 3:case 4:case 5:printf(⼯作⽇\n);break;case 6:case 7:printf(休息⽇\n);break;default:printf(输⼊错误\n);break;}return 0; } 4 switch语句中的case和default的顺序问题         在 switch 语句中 case ⼦句和 default ⼦句有要求顺序吗 default 只能放在最后吗其实在 switch 语句中 case 语句和 default 语句是没有顺序要求的只要你的顺序是满⾜实 际需求的就可以。不过我们通常是把 default ⼦句放在最后处理的。 # while循环 C语⾔一共提供了3种循环语句 while 就是其中⼀种接下来就介绍⼀下 while 语句。while 语句的语法结构和 if 语句⾮常相似。 1 if 和 while的对⽐ if 表达式                while表达式         语句                                语句 //代码1 #include stdio.h int main() {if(1)printf(hehe\n); //if后边条件满⾜打印⼀次hehereturn 0; } //代码2 #include stdio.h int main() {while(1)printf(hehe\n); //while后边的条件满⾜死循环的打印hehereturn 0; }         这就是他们的区别while语句是可以实现循环效果的。 2 while语句的执⾏流程         ⾸先上来就是执⾏判断表达式表达式的值为0循环直接结束表达式的值不为0则执⾏循环语句语句执⾏完后再继续判断是否进⾏下⼀次判断。 3 while循环的实践          练习在屏幕上打印 1~10 的值 参考代码 #include stdio.h int main() {int i 1;while(i10){printf(%d , i);i i1;}return 0; } 4 while循环练习   输⼊⼀个正的整数逆序打印这个整数的每⼀位 例如 输⼊1234输出4 3 2 1 输⼊521输出1 2 5 这道题是比较常见的题目考察的是 % 和 / 在循环中的应用。         要想得到n的最低位可以使⽤n%10的运算得到的余数就是最低位如1234%10得到4   要想去掉n的最低位找出倒数第⼆位则使⽤ nn/10 操作就可以去掉最低位的n1234/10得到123123相较于1234就去掉了最低位123%10就得到倒数第⼆位3。   循环1和2两个步骤在n变成0之前就能到所有的位。代码如下 #include stdio.h int main() {int n 0;scanf(%d, n);while(n){printf(%d , n%10);n / 10;}return 0; }         如此while循环就讲完了while循环的使用非常简单相信各位在以后的使用中能够熟练掌握。 # for循环  1 语法形式 ​​​​​​​             接下来请各位注意for循环是我们三种循环中使用最多的for循环的语法形式如下 for(表达式1; 表达式2; 表达式3)                         语句 // 如果循环体想 包含更多的语句可以加上⼤括号         表达式1 ⽤于循环变量的初始化         表达式2 ⽤于循环结束条件的判断         表达式3 ⽤于循环变量的调整 2 for循环的执⾏流程          ⾸先执⾏ 表达式1 初始化循环变量接下来就是执行表达式 2 的判断部分表达式 2的结果如果 0即表达式为假则循环结束表达式 2 的结果如果!0则执⾏循环语句循环语句执⾏完后再去执⾏表达式 3 ,调整循环变量然后再去表达式 2的地⽅执⾏判断表达式2 的结果是否为0决定循环是否继续。整个循环的过程中表达式1初始化部分只被执⾏1次剩下的就是表达式2、循环语句、表达式3在循环。 3 for循环的实践 练习在屏幕上打印1~10的值 #include stdio.hint main() { int i 0; for(i1; i10; i) {printf(%d , i); }return 0; } 4 while循环和for循环的对⽐          for 和 while 在实现循环的过程中都有初始化、判断、调整这三个部分但是 for 循环的三个部分⾮常集中便于代码的维护⽽如果代码较多的时候 while 循环的三个部分就⽐较分散所以从形式上 for 循环要更优⼀些。 5 for循环练习 练习1 计算1~100之间3的倍数的数字之和 #include stdio.h int main() {int i 0;int sum 0;for(i1; i100; i){if(i % 3 0)sum i;}printf(%d\n, sum);return 0; }         这是最常见的写法但是如果能直接产⽣3的倍数的数字就省去了多余的循环和判断思路有了就要立即实践。 #include stdio.h int main() {int i 0;int sum 0;for(i3; i100; i3){sum i;}printf(%d\n, sum);return 0; } ‘        这样不仅简化了代码还提高了运行效率这也是我们在平常刷题的时候要去不断思考得到问题。 # do—while循环  1 语法形式         在循环语句中 do while 语句的使⽤最少它的语法如下         do         {         语句          }         while ( 表达式 )          while 和 for 这两种循环都是先判断条件如果满⾜就进⼊循环执⾏循环语句如果不满⾜就跳出循环 ⽽ do while 循环则是先直接进⼊循环体执⾏循环语句然后再执⾏ while 后的判断表达式表达式为真就会进⾏下⼀次表达式为假则不再继续循环。 2 do while循环的执行流程          在 do while 循环中先执⾏图上的“循环体”执⾏完后在去执⾏“条件”条件的结果是!0则继续循环执⾏循环语句判断表达式的结果0则循环结束。所以在 do while 语句中循环体是⾄少执⾏⼀次的这是 do while 循环⽐较特殊的地⽅。 3 do while循环的实例  在屏幕上打印1~10的值 #include stdio.h int main() {int i 1;do{printf(%d , i);i i 1;}while(i10);return 0; }         ⼀般 do while 使⽤在循环体⾄少被执⾏⼀次的场景下所以较少⼀些。 4 练习  输⼊⼀个正整数计算这个整数是⼏位数 例如      输⼊1234         输出4                  输⼊12             输出2 #include stdio.h int main() {int n 0;scanf(%d, n);int cnt 0;do{cnt;n n / 10;} while (n);printf(%d\n, cnt);return 0; }         这⾥并⾮必须使⽤do while 语句但是这个代码就⽐较适合使⽤ do while循环因为当n是0时while和for循环打印都是0而do while是1。 # break和continue语句   在循环执⾏的过程中如果某些状况发⽣的时候需要提前终⽌循环这是⾮常常⻅的现象。C语⾔中提供了 break 和 continue 两个关键字就是应该到循环中的。 • break 的作⽤是⽤于永久的终⽌循环只要 break 被执⾏直接就会跳出循环继续往后执​​​​​​​⾏。         • continue 的作⽤是跳过本次循环 continue 后边的代码在 for 循环和 while 循环中是有所差异的。 1 while循环中的break和continue  1.1 break         break 的作⽤就是永久的终⽌循环只要 break 被执⾏ break 外的第⼀层循环就终⽌了。那以后我们在循环中想在某种条件下终⽌循环则可以使⽤ break 来完成我们想要的效果。         break 执行代码展示 #include stdio.h int main() {int i 1;while(i10){if(i 5)break;//当i等于5后就执⾏break循环就终⽌了printf(%d , i);i i1;}return 0; }         打印了1,2,3,4后当i等于5的时候循环正 break 的地⽅终⽌不再打印不再循环。 1.2 continue         而continue 是继续的意思在循环中的作⽤就是跳过本次循环中 continue 后边的代码继续进⾏下⼀次循环的判断。上⾯的代码如果把 break 换成 continue 会是什么结果呢 #include stdio.h int main() {int i 1;while(i10){if(i 5)continue;//当i等于5后就执⾏continue直接跳过continue的代码去循环的判断的地⽅//因为这⾥跳过了i i1所以i⼀直为5程序陷⼊和死循环printf(%d , i);i i1;}return 0; }         到这⾥我们就能分析出来 continue 可以帮助我们跳过某⼀次循环 continue 后边的代码直接到循环的判断部分进⾏下⼀次循环的判断如果循环的调整是在 continue 后边的话可能会造成死循环。 2 for循环中的break和continue  2.1 break         其实和 while 循环中的 break ⼀样 for 循环中的 break 也是⽤于终⽌循环的不管循环还需要循环多少次只要执⾏到了 break 循环就彻底终⽌我们上代码。 #include stdio.h int main() {int i 1;for(i1; i10; i){if(i 5)break;printf(%d , i);}return 0; }        未来我们在某个条件发⽣的时候不想再继续循环的时候就可以使⽤ break 来完成。 2.2 continue         上⾯的代码如果把 break 换成 continue 会是什么结果呢 #include stdio.h int main() {int i 1;for(i1; i10; i){if(i 5)continue;//这⾥continue跳过了后边的打印来到了i的调整部分printf(%d , i);}return 0; }         所以在 for 循环中 continue 的作⽤是跳过本次循环中 continue 后的代码直接去到循环的调整部分。未来当某个条件发⽣的时候本次循环⽆需再执⾏后续某些操作的时候就可以使⽤ continue 来实现。 # goto语句 在C语⾔中提供了⼀种⾮常特别的语法就是 goto 语句和跳转标号 goto 语句可以实现在同⼀个函数内跳转到设置好的标号处。 #include stdio.h int main() {printf(hehe\n);goto next:printf(haha\n);next:printf(跳过了haha的打印\n); return 0; }         一般情况下我并不推荐goto 语句如果使⽤的不当就会导致在函数内部随意乱跳转打乱程序的执⾏流程所以我们的建议是能不⽤尽量不去使⽤但是 goto 语句也不是⼀⽆是处在多层循环的代码中如果想快速跳出使⽤ goto 就⾮常的⽅便了。比如 for(...) {for(...){for(...){if(disaster)goto error;}} } error:         本来 for 循环想提前退出得使⽤ break ⼀个 break 只能跳出⼀层 for 循环如果3层循环嵌套就得使⽤3个 break 才能跳出循环所以在这种情况下我们使⽤ goto 语句就会更加的快捷。 到此我们的分支和循环结构就都讲完了如果能够给到大家一定的帮助我也会非常荣幸感谢观看。
http://www.huolong8.cn/news/92665/

相关文章:

  • 济南百度公司做网站吗wordpress 预览插件下载
  • 山东手机网站建设公司网站建设模块下载
  • 四川省住房和城乡建设网站网站创建流程教程
  • 360网站图标怎么做百度官网首页下载
  • 做网站软件要钱吗深圳公共资源交易网招标公告
  • 营销型网站套餐手机网站智能管理系统
  • 国际贸易网站有哪些手机app免费制作
  • 深圳网站(建设信科网络)网络营销网站推广方法
  • 网站中的表单怎么做模块式网站制作
  • 海口网站建设呢vs2015可以做网站么
  • 扬州网站建设要多少钱c2c电子商务网站建设
  • 韩国购物网站有哪些动漫网站策划书
  • 自己的网站如何让百度收录今天广州白云新闻
  • 智能网站平台怎么学网站建设
  • 住房和城乡建设部网站住房补贴网站打开慢怎么回事
  • 哪个网站生鲜配送做的好wordpress地址重改
  • 学院评估 网站建设整改网站 地区加关键词
  • 建站网站有哪些分销系统多少钱一套
  • 建设银行宁波分行 招聘网站网络规划设计师和系统架构师哪个好考
  • 凯里做网站百度网站建设推广
  • 有哪个网站可以学做早餐吃的重庆网站建设重庆
  • 一个服务器可以放几个网站互联网行业还能支撑多久
  • 怎么做私人彩票网站笑话网站域名
  • 熊掌号怎么做网站跳转链接建设厅焊工证
  • 路桥建设局网站广州本地新闻
  • 山西房地产网站建设上传网站到百度
  • 网站导出链接查询汉中建设工程招标投标信息网
  • 河源市连平县建设局网站网站建设多少钱一个平台
  • 北京监理协会培训网站兰州网络公司网站
  • 中国十大热门网站网站建设的流程和内容