首页 > 编程知识 正文

c语言比较语句,C语言分支结构程序设计

时间:2023-05-03 14:06:06 阅读:9654 作者:2460

hello,everyone! 害,forever好久没写博客了。 我最近又来写了。 我是dydmj。 写博客只是为了更好的记忆和理解。 哈哈! 我希望我自己的理解对大家有一点帮助! 如果有不足的地方,请多关照。

上一篇直接放码,然后一步一步分析码,进入c语言初知识。 这篇文章直接去分支结构。 当然,c初知识,有很多知识点。 后面各篇有问题再详细介绍。

c语言分支结构3358 www.Sina.com/http://www.Sina.com /

1 .以下是简单的if语句,如果表达式为真,则执行语句,否则不执行语句; c语言中0为假,0以外为真。

(if结构) if (式)语句; } if结构示例:

#includestdio.hint main () {int a=8,b=24; if(ab ) ) printf('%d ',b ); }返回0; } 2.实现双重分支结构的if-else语句及其流程图如下所示。 根据表达式的值选择执行语句1或语句2。 首先,如果表达式的值为真,则必须执行语句1。 否则执行语句2。

if-else结构: if (式) {文1; (} else { )语句2; }

if-else结构程序示例:

//输出两个数字中最大的#includestdio.h//头文件并调用int main ()//主函数) {int a=0,b=0的//整数(int )变量scanf } ' % //如果任意输入a、b的两个值if(ab )//ab为真,则输出a{printf('%dn ',a ); //printf如果不是输出函数}else//,则输出b{printf('%dn ',b ); }返回0; 返回//int整数} 3.以下是else-if语句和流程图,该语句是实现多层分支的语句,如果表达式1为真,则执行语句1,否则开始向下判断表达式2; 如果表达式2为真,则执行语句2,否则表达式3将继续执行。 依次判断的话……

else-if结构: if (式1 ) {文1; (}else if )式2 )语句2; }……else if (式n-1 ) )语句n-1; (}else{ )语句n; }

else-if结构程序示例:

//成绩转换,百分比五分法#includestdio.hint main () {int score=0; scanf('%d ',score ); if(score=90score=100 ) /此运算符为“且”、“||”这是或运算符(printf ) an ); }可以在}elseif(score=80score90 )//else if之后写条件判断(printf(bn ) )。 }elseif(score=70score80 ) printf(cn ); }elseif(score=60score70 ) printf(dn ); }else{printf(e(n ); }返回0; } 4.以下是if-else嵌套语句和流程图。 此语句用于判断嵌套,但一般建议嵌套不要超过三个层次。 嵌套过多会降低代码的可读性,也很难进行后期维护。 所以一般不要嵌套太久。 if嵌套时,请注意if和else配对的问题。 在c语言中,else始终与之前最近的if配对。 大家在开始写作时要养成良好的编程习惯,注意对齐、空格和{ }对写。

if-else嵌套结构: if (式1 ) if (式2 )文1; (}else{ )语句2; (else ) if )式3 )文3; (}else{ )语句4; }

if-else嵌套结构程序示例:

//成绩等级判断#includestdio.hint main () {int n=0; scanf('%d ',n ); if(n=60 ) if (n=90n=100 )//if-else语句中嵌套的else-if语句) {printf )“优秀(n )”}elseif(n=80 ) {printf )良好}elseif(n=70 ) {printf ) )一般(n ); }else{printf (合格(n ) ); }else{if(n0 )/if-else语句中嵌套的if-else语句) printf ) ' notfoundn ' ); (else ) printf ) )不合格(n ); } }返回0; }以上为c语言的if分支语句及其结构,if一般使用较多。 在任何if语句中,实际上格式都是相同的if (表达式),如果表达式正确,则执行,否则不执行或执行分支。

1. if分支语句

交换机也是一个重点

支语句,一般用于多且明确的情况,对于这种情况多的其实用 if 也可以完成,只不过需要很多 if 语句来完成,就显得程序很杂,很不好看,因此就有了 switch 分支语句。
以下是 switch (含有break)语句及流程图:break 代表终止的意思,遇到break则意味着终止当前的 switch 。

//switch(含break)结构switch(常量表达式){ case 表达式1:语句1;break; case 表达式2:语句2;break; case 表达式3:语句3;break; …… case 表达式n:语句n;break; default:语句n+1;break;}


switch结构程序示例:

//星期查找#include<stdio.h>int main(){int n = 0;scanf("%d", &n);switch (n){case 1:printf("Mondayn"); break;//case 2:printf("Tuesdayn"); break;case 3:printf("Wednesdayn"); break;case 4:printf("Thursdayn"); break;case 5:printf("Fridayn"); break;case 6:printf("Saturdayn"); break;case 7:printf("Sundayn"); break;default:printf("NOT FOUNDn");//这里break可有可无}return 0;}

以下是 switch (不含break)语句及流程图:

//switch(不含break)结构switch(常量表达式){ case 表达式1:语句1; case 表达式2:语句2; case 表达式3:语句3; …… case 表达式n:语句n; default:语句n+1;}


switch(不含break)结构程序示例:

#include<stdio.h>int main(){int n = 0;scanf("%d", &n);switch (n){case 1:printf("Mondayn"); case 2:printf("Tuesdayn"); case 3:printf("Wednesdayn"); case 4:printf("Thursdayn"); case 5:printf("Fridayn"); case 6:printf("Saturdayn"); case 7:printf("Sundayn"); default:printf("NOT FOUNDn"); }return 0;}

如果n=3,输出示例为:

以上是 switch 分支语句。如果没有 break 就会出现 case 穿透,case 就会一直执行,直到遇见 break 结束或整个 switch 结束。
总结:(1) if 语句适用于复杂逻辑进行判断情形,而switch适用于对离散值进行判断的情形;
(2)if 和 switch 可以互相替换,switch 用于多分支时更加简洁。
今天的内容不太多,主要详细介绍分析了 if 相关语句结构和 switch 语句结构,希望对大家有所帮助,如果文章中有什么不足或错误之处,望大家批评指正。
最后送大家一句话:上山的人永远不要嘲笑下山的人,因为他们比你们更早辉煌过;山顶的人永远不要嘲笑山下的人,因为你永远不知道他们哪天就会登上山顶。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。