失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 黑马程序员--C语言-选择结构

黑马程序员--C语言-选择结构

时间:2018-07-24 05:53:38

相关推荐

黑马程序员--C语言-选择结构

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -----

一、C程序结构

1)顺序结构

顺序结构是最简单的程序结构,它是由若干个依次执行的处理步骤组成的。

程序流程图:

2)分支结构

有时候,你的程序需要做出决定,是执行这段代码,还是执行那一段。遇到一些条件的判断,流程根据条件是否成立有不同的流向。

3)循环结构

循环的特点是,在给定的判断条件成立时,反复执行某个程序段C语言中主要的循环语句有三个:

1. while循环语句

2. do-while循环语句

3. for循环语句

​二、if语句

1、分支结构程序设计

作用:根据条件控制程序流向。

条件的组成:各种类型的常量、变量、表达式(常用:关系/逻辑表达式)

2、单分支 if 语句

2.1.if 条件结构是根据条件判断之后再做处理

2.2.基本的 if 条件结构

if( 条件 ){

//语句

}

2.3.单分支 if 语句

样例: if (x<5)

{

x = x +1;

printf(“x=%d”, x);

}

2.4.单分支注意事项

1)表达式应该是一个逻辑表达式,其值是一个逻辑类型(真或假)。

2)判断”相等”,用两个等号==

3)如果语句只有一句时,花括号{}可省略;如果有两句或以上,必须使用复合语句,加花括号{}。

4)例: if(x==y) printf(“两数相等\n”);

2.5.例题:

输入两个整数a和b,若a<b,交换两个数,并输出交换后a,b的值。

解:1.分析问题

step1:设置两个变量​​a,b int a,b,x;

step2:输入a,b的值​ ​scanf(“%d%d”,&a,&b);

​step3:如果a<bif(a<b)

{

交换a,bx=a; a=b; b=x;

输出a,bprintf(“交换后a=%d,b=%d”,a,b);

}

<span style="font-size:14px;">#include <stdio.h>int main() {{int a, b, x; //x 作为交换的中间变量scanf("%d%d", &a, &b);if(a < b){x = a;a = b;b = x;printf("交换后 a=%d,b=%d\n", a, b);}return 0;}</span>

3、双分支if语句

3.1 if-else条件结构

<span style="font-size:14px;"></span><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">if</span> ... <span style="color: #bb2ca2">else</span> .... <span style="font-family: 'Heiti SC Light';">的分支结构</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span>(<span style="font-family: 'Heiti SC Light';">表达式</span>){</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="font-family: 'Heiti SC Light';">语句块</span><span style="color: #272ad8">1</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>如果表达式为真,会执行此处的代码</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span>{</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>如果表达式为假了,会执行此处的代码</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="font-family: 'Heiti SC Light';">语句块</span><span style="color: #272ad8">2</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><div></div><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light';">// 注意:不管表达式为真还是为假,都会执行一个语句块</p><div></div>

3.2样例:

<span style="font-size:14px;">if(x>y)printf("较大数是%d",x);elseprintf("较大数是%d",y);</span>

3.3 注意点

1.else 子句不能作为语句单独使用,它是 if 语句的一部分,必须与 if 配对使用。

2.else 子句可省略。省略后就等价于单分支语句。

3.4 例题:

</pre><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="font-size:18px; font-family: 'Times New Roman';"></span><pre name="code" class="html"><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: #d12f1b"><stdio.h></span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">void</span> test(){</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//<span style="font-family: 'Heiti SC Light';">先定义变量</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">int</span> num=<span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>提示用户输入一个数</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);"><span style="color: #000000"> </span><span style="color: #3d1d81">printf</span><span style="color: #000000">(</span>"<span style="font-family: 'Heiti SC Light';">请输入一个数字:</span>\n"<span style="color: #000000">);</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>接收用户输入的数</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">scanf</span>(<span style="color: #d12f1b">"%d"</span>,&num);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>判断这个数是否等于<span style="font-family: Menlo;">5</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>// num == 5 <span style="font-family: 'Heiti SC Light';">为假</span> <span style="font-family: 'Heiti SC Light';">可能是大于</span>5<span style="font-family: 'Heiti SC Light';">,也可能是小于</span>5</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (num == <span style="color: #272ad8">5</span>) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//<span style="font-family: 'Heiti SC Light';">如果等于了</span>5<span style="font-family: 'Heiti SC Light';">,提示</span> <span style="font-family: 'Heiti SC Light';">恭喜你</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">恭喜你</span><span style="color: #d12f1b">!\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span>{</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//<span style="font-family: 'Heiti SC Light';">否则提示</span> <span style="font-family: 'Heiti SC Light';">很可惜</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">很可惜</span><span style="color: #d12f1b">!\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">}<span style="font-family: 'Times New Roman';font-size:18px;"> </span></p>

4、多重(多分支)if...else if 结构

4.1、多重 if 结构就是在 else 部分中还包含其他 if 块

4.2、注意点:

1.整条 if 语句中只有一个分支能被执行。也就是说,当执行完某个分支后,整条 if语句也就执行完毕了。

2. else if 子句不能单独使用。

3. 最后的 else 子句可省略,表示以上条件都不满足时,什么都不需做。

4.3、样例:

int score = 70; //考试成绩if ( score >= 90 ){printf("优秀");}else if (score >= 80 ){printf ("良好");}else if (score >= 60 ){printf ("中等");}else{printf ("差");}

4.4 例题:

<p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: #d12f1b"><stdio.h></span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">int</span> main(<span style="color: #bb2ca2">int</span> argc, <span style="color: #bb2ca2">const</span> <span style="color: #bb2ca2">char</span> * argv[]) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>定义变量<span style="font-family: Menlo;">,</span>保存用户输入的分数</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">int</span> score=<span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>提示用户输入一个分数</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);"><span style="color: #000000"> </span><span style="color: #3d1d81">printf</span><span style="color: #000000">(</span>"<span style="font-family: 'Heiti SC Light';">请输入一个分数</span>:\n"<span style="color: #000000">);</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//<span style="font-family: 'Heiti SC Light';">接收分数</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">scanf</span>(<span style="color: #d12f1b">"%d"</span>,&score);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//<span style="font-family: 'Heiti SC Light';">校验分数是否合法(</span> score<0||score>100<span style="font-family: 'Heiti SC Light';">)</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (score<<span style="color: #272ad8">0</span> || score > <span style="color: #272ad8">100</span>) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">分数不合法</span><span style="color: #d12f1b">!\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span>{</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>当分数合法以后,再判断等级</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (score<=<span style="color: #272ad8">59</span>) { <span style="color: #008400">//0-59 </span><span style="font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);">想反</span><span style="color: #008400"> 60-100</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"E\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span> <span style="color: #bb2ca2">if</span>(score<=<span style="color: #272ad8">69</span>){ <span style="color: #008400">//60-69 70-100</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"D\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span> <span style="color: #bb2ca2">if</span> (score<=<span style="color: #272ad8">79</span>){ <span style="color: #008400">//70-79 80-100</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #008400">//C</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"C\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span> <span style="color: #bb2ca2">if</span> (score<=<span style="color: #272ad8">89</span>){<span style="color: #008400">//80-89 90-100</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #008400">//B</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"B\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span>{ <span style="color: #008400">//90-100</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"A\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">return</span> <span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">}</p><div></div>

5、if使用注意

</pre></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);"><pre name="code" class="html"><pre name="code" class="html"><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: #d12f1b"><stdio.h></span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">int</span> main(<span style="color: #bb2ca2">int</span> argc, <span style="color: #bb2ca2">const</span> <span style="color: #bb2ca2">char</span> * argv[]) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">int</span> a = <span style="color: #272ad8">3</span>,b=<span style="color: #272ad8">4</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//1<span style="font-family: 'Heiti SC Light';">、空语句</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (a==<span style="color: #272ad8">3</span>); <span style="color: #008400">//</span><span style="font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);">空语句,什么都没有干</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//2</span>、如果<span style="font-family: Menlo;">if</span>之后的代码块,如果只有一句话,则可以省略大括号</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (a><span style="color: #272ad8">3</span>)</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span><span style="color: #3d1d81">printf</span><span style="color: #000000">(</span><span style="color: #d12f1b">"a>2\n"</span><span style="color: #000000">); </span>//if<span style="font-family: 'Heiti SC Light';">条件如果没有大括号,只会影响一句话</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//3</span>、永真式和永假式</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span>(<span style="color: #272ad8">1</span>){ } <span style="color: #008400">//</span><span style="font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);">大括号中永远执行</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span>(<span style="color: #272ad8">0</span>){ } <span style="color: #008400">//</span><span style="font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);">大括号中永远不会执行</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//4<span style="font-family: 'Heiti SC Light';">、</span>if<span style="font-family: 'Heiti SC Light';">语句结合</span>return <span style="font-family: 'Heiti SC Light';">语句</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (a><span style="color: #272ad8">3</span>)</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span><span style="color: #bb2ca2">return</span><span style="color: #000000"> </span><span style="color: #272ad8">0</span><span style="color: #000000">; </span>//<span style="font-family: 'Heiti SC Light';">在一个函数中,</span>return<span style="font-family: 'Heiti SC Light';">语句之后的语句都不会执行</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//5<span style="font-family: 'Heiti SC Light';">、</span>if<span style="font-family: 'Heiti SC Light';">作用域的问题</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (a==<span style="color: #272ad8">3</span>) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">int</span> num = <span style="color: #272ad8">10</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//printf("num = %d\n",num);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//6</span>、容易疑惑的地方<span style="font-family: Menlo;"> </span>作用域的紊乱</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span>(a==<span style="color: #272ad8">3</span>)</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//int num = 10;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"a>3\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//7</span>、省略大括号的分析</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">int</span> age = <span style="color: #272ad8">13</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (age >= <span style="color: #272ad8">0</span>){</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span>(age < <span style="color: #272ad8">5</span>){</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">小儿</span><span style="color: #d12f1b">\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span>{</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">if</span>(age < <span style="color: #272ad8">10</span>){</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">小孩</span><span style="color: #d12f1b">\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (age > <span style="color: #272ad8">12</span>){</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">小破孩</span><span style="color: #d12f1b">\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }<span style="color: #bb2ca2">else</span>{</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">不知道</span><span style="color: #d12f1b">\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">}</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">return</span> <span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">}</p>

三、switch结构

1、什么是switch结构

switch (整型或字符表达式){case 1:语句;break;case 2语句;break;default:语句;}

2、注意点

1)如果需要每个 case 执行完后跳出

2)在每个 case 后不要忘记写 break;

3)case 后面的常量必须各不相同

3、case语句注意事项

0) case语句格式: case 常量表达式: (空格和冒号不能省)

1) 可以是常量 case 10:

2) 如果放表达式,那么只可以是常量表达式 case 5+5:

3) default语句的位置可以任意放

4) case的穿透问题,同样适用于 default

5) 如果default语句放到 switch语句的最后,可以不加break

如果不是放到最后,是必须加上break的

6) case 后面不能是实数

7) case 语句之后,默认的第一句话不能定义定义变量

如果第一句话非要定义,应该加上大括号

8) 编译器的bug

4、switch语句的表达式类型

1)可以放一个整型的变量 int num = 10;switch (num)

2)可以放一个整形常量 switch (10)

3)可以放一个返回值是整型的表达式 switch (5+5),num = 5+5

4)还可以放可以转换为int类型的表达式 switch ('a'+'a')

5、例题:

<p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: #d12f1b"><stdio.h></span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">int</span> main(<span style="color: #bb2ca2">int</span> argc, <span style="color: #bb2ca2">const</span> <span style="color: #bb2ca2">char</span> * argv[]) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: rgb(187, 44, 162);">int</span> num = <span style="color: #272ad8">10</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">// 1</span>、<span style="font-family: Menlo;">case</span>语句可以有多行语句,可以加括号,也可以省略括号</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">// 2</span>、<span style="font-family: Menlo;">break</span>语句是可选的,可以加也可以不加</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//'a' = 97</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">switch</span> (<span style="color: #272ad8">'a'</span>+<span style="color: #272ad8">'a'</span>) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">194</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"num = 10\n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"sb \n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"zbz \n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"cgx \n"</span>);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">default</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">return</span> <span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">}</p><div></div>

四、比较 switch 和多重 if 结构

1、相同点

都可以实现多分支结构

2、 不同点 switch

switch 只能处理等值(==)的条件判断,且条件是整型变量或字符变量的等值判断

switch 满足一个表达式后继续,除非 break

switch 无论都少句,都无需{}

3、不同点多重 if

处理在 else 部分还包含其它 if 结构,特别适合某个变量处于某个区间时的情况

else-if 满足一个表达式后退出

else-if 语句两句及以上,必须加{}

五、嵌套if

1、嵌套 if 结构

1)嵌套 if 结构就是将整个 if 块插入另一个 if 块中

2)C 语言规定,每个 else 部分总属于前面最近的那个缺少对应的 else 部分的if 语句。

3)提倡使用大括号括起来以避免看起来有二义性。

2、嵌套if语法

if(表达式 1){if(表达式 2){// 表达式 2 为真时执行......}else{// 表达式 2 为假时执行......}}else{//表达式 1 为假时执行......}

3、嵌套if结构的样例

#include<stdio.h> int main(){int a,b;printf("\n 请输入 A 和 B 的值: ");scanf("%d%d",&a,&b);if(a!=b)if(a>b)printf("\n A>B\n");elseprintf("\n A<B\n");elseprintf("\n A=B\n");}

4、嵌套if结构例题:

<p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2"></span><pre name="code" class="html" style="color: rgb(102, 102, 102);"><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: rgb(209, 47, 27);"><stdio.h></span></p>

int main(int argc, const char * argv[]) {

//先定义变量

int num=0;

//提示用户输入一个数

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

//接收用户输入的数

scanf("%d",&num);

//判断这个数是否等于5

// num == 5 为假 可能是大于5,也可能是小于5

if (num == 5) {

printf("恭喜你\n");

}else{

//再判断,如果这个数大于5 提示 大于5

if (num > 5) {

printf("大于5了\n");

}else{

//否则提示 小于5

printf("小于5了\n");

}

}

return 0;

}

六、应用

1、实现简单的计算器

</pre></p><p style="margin-top: 0px; margin-bottom: 0px; font-family: Menlo; color: rgb(120, 73, 42);"><pre name="code" class="html" style="font-weight: 600;"><span style="font-size:14px;"></span><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: #d12f1b"><stdio.h></span></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"><span style="color: #bb2ca2">int</span> main(<span style="color: #bb2ca2">int</span> argc, <span style="color: #bb2ca2">const</span> <span style="color: #bb2ca2">char</span> * argv[]) {</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>定义变量<span style="font-family: Menlo;"> </span>保存用户输入的两个值<span style="font-family: Menlo;"> </span>运算结果<span style="font-family: Menlo;"> </span>输入的符号</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">int</span> num1,num2,op;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">float</span> result=<span style="color: #272ad8">0.0f</span>;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>提示用户输入一个数</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; color: rgb(209, 47, 27);"><span style="color: #000000"> </span><span style="color: #3d1d81">printf</span><span style="color: #000000">(</span>"<span style="font-family: 'Heiti SC Light';">请输入第一个数:</span>\n"<span style="color: #000000">);</span></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>接收用户输入的第一个数</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #3d1d81">scanf</span>(<span style="color: #d12f1b">"%d"</span>,&num1);</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>提示输入运算符,然后在接收</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; color: rgb(209, 47, 27);"><span style="color: #000000"> </span><span style="color: #3d1d81">printf</span><span style="color: #000000">(</span>"<span style="font-family: 'Heiti SC Light';">请选择运算符:</span>0.+ 1.- 2.* 3./\n"<span style="color: #000000">);</span></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>提示输入运算符,然后在接收</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #3d1d81">scanf</span>(<span style="color: #d12f1b">"%d"</span>,&op);</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">if</span> (op<<span style="color: #272ad8">0</span> || op ><span style="color: #272ad8">3</span>) {</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">运算符不合法</span><span style="color: #d12f1b">\n"</span>);</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">return</span> <span style="color: #272ad8">0</span>;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> }</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>提示输入另外一个数,然后再接收</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; color: rgb(209, 47, 27);"><span style="color: #000000"> </span><span style="color: #3d1d81">printf</span><span style="color: #000000">(</span>"<span style="font-family: 'Heiti SC Light';">请输入另外一个数:</span>\n"<span style="color: #000000">);</span></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>接收用户输入的第一个数</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #3d1d81">scanf</span>(<span style="color: #d12f1b">"%d"</span>,&num2);</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>//<span style="font-family: 'Heiti SC Light';">开始计算</span></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">//</span>判断符号,进行计算</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">switch</span> (op) {</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">0</span>:</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;">result = num1+num2;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">1</span>:</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;">result = num1-num2;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">2</span>:</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;">result = num1*num2;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">3</span>:</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;">result = num1/(<span style="color: #bb2ca2">float</span>)num2;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"></p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> }</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #3d1d81">printf</span>(<span style="color: #d12f1b">"%d </span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">和</span><span style="color: #d12f1b"> %d</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">运算的结果</span><span style="color: #d12f1b"> %.2f\n"</span>,num1,num2,result);</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo; min-height: 13px;"> </p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;"> <span style="color: #bb2ca2">return</span> <span style="color: #272ad8">0</span>;</p><p style="font-size: 11px; margin-top: 0px; margin-bottom: 0px; font-family: Menlo;">}</p><div style="font-size: 11px;"></div>

2、某个自动加油站有 ‘a’,‘b’,‘c’三种汽油品种,单价分别为 6.92,7.37,7.64(元/公升),也提供了“自己加”或“协助加”两个服务等级,这样用户可以得到5%或10%的优惠,请编程序针对用户输入加油量x,汽油品种y和服务类型z(‘f’—自动加,‘m’—自己加,‘e’—协助加),(注:‘f’—自动加无优惠),计算应付款pay。(请用多分支选择switch语句)。

<p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(120, 73, 42);">#include <span style="color: #d12f1b"><stdio.h></span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">int</span> main(<span style="color: #bb2ca2">int</span> argc, <span style="color: #bb2ca2">const</span> <span style="color: #bb2ca2">char</span> * argv[])</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">{</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>// x <span style="font-family: 'Heiti SC Light';">千克数</span> m1<span style="font-family: 'Heiti SC Light';">价格</span> m2<span style="font-family: 'Heiti SC Light';">折扣</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">float</span> x, m1, m2, m;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span><span style="color: #bb2ca2">char</span><span style="color: #000000"> y , z;</span>//<span style="font-family: 'Heiti SC Light';">汽油种类,</span> <span style="font-family: 'Heiti SC Light';">服务等级</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(0, 132, 0);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> </span><span style="font-family: Menlo;">// </span>输入选择油的千克,种类,服务</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);"><span style="font-family: Menlo; color: rgb(0, 0, 0);"> printf(</span><span style="font-family: Menlo;">"</span>请输入汽油的千克数,种类,服务;并用逗号隔开<span style="font-family: Menlo;">\n"</span><span style="font-family: Menlo; color: rgb(0, 0, 0);">);</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> scanf(<span style="color: #d12f1b">"%f, %c, %c"</span>, &x, &y, &z);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>// <span style="font-family: 'Heiti SC Light';">选择汽油种类</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">switch</span> (y) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">'a'</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">m1 = <span style="color: #272ad8">6.97</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">'b'</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">m1 = <span style="color: #272ad8">7.37</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">'c'</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">m1 = <span style="color: #272ad8">7.64</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;"> </p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>// <span style="font-family: 'Heiti SC Light';">选择服务种类</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">switch</span> (z) {</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"></span>//<span style="font-family: 'Heiti SC Light';">自动加</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">'f'</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">m2 = <span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"></span>//<span style="font-family: 'Heiti SC Light';">自己加</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">'m'</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">m2 = <span style="color: #272ad8">0.05</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"></span>//<span style="font-family: 'Heiti SC Light';">协助加</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">case</span> <span style="color: #272ad8">'e'</span>:</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">m2 = <span style="color: #272ad8">0.1</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #bb2ca2">break</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> }</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><span style="color: #000000"> </span>// <span style="font-family: 'Heiti SC Light';">计算应该支付金额</span> <span style="font-family: 'Heiti SC Light';">总金</span> <span style="font-family: 'Heiti SC Light';">=</span> <span style="font-family: 'Heiti SC Light';">实际</span> - <span style="font-family: 'Heiti SC Light';">优惠</span></p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> m = (x * m1) - (x * m1 * m2);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> printf(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">汽油的种类是:</span><span style="color: #d12f1b">%c\n"</span>, y);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> printf(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">服务等级是:</span><span style="color: #d12f1b">%c\n"</span>, z);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> printf(<span style="color: #d12f1b">"</span><span style="font-family: 'Heiti SC Light'; color: rgb(209, 47, 27);">用于应付金额是:</span><span style="color: #d12f1b">%.3f\n"</span>, m);</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"> <span style="color: #bb2ca2">return</span> <span style="color: #272ad8">0</span>;</p><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;">}</p>

如果觉得《黑马程序员--C语言-选择结构》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。