深入了解C语言结构化的程序设计
目录
- C语言是结构化的程序设计语言!
- if语句
- 1:单分支结构
- 2:多分支结构
- 悬空else
- while循环
- 总结
C语言是结构化的程序设计语言! 结构有三大类:顺序结构,选择结构,循环结构!
顺序结构:顺序结构是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。
举个例子:
#includeint main(){int i=1; //这段代码中i依次为1,2,3printf("%d\n",i); //同时打印1,2,3,这里的代码就是按顺序结构进行下去的i++; printf("%d\n",i); i++; printf("%d\n",i); return 0; }
文章图片
选择结构:选择结构用于判断给定的条件,根据判断的结果判断某些条件,根据判断的结果来控制程序的流程。主要是使用if语句,以及switch语句。
if语句
1:单分支结构
if(表达式)语句;
#includeint main(){int age; scanf("%d",&age); if(age<18){printf("未成年\n"); }return 0; }
文章图片
2:多分支结构
if(表达式1)语句1;else if(表达式2)语句2;else 语句3;
#includeint main(){int age; scanf("%d",&age); if(age<18){printf("未成年\n"); }else if(age>=18&&age<=30){printf("青年\n"); }else{printf("中年以及老年\n"); }return 0; }
文章图片
注:当if语句中的表达式结果为真,则语句执行
悬空else
看看这段代码,你知道它会打印什么吗?
#includeint main(){int a=0; int b=0; if(a==1)if(b==2)printf("hehe\n"); elseprintf("haha\n"); return 0; }
如果你觉得会打印东西,那么恭喜你,回答错误!!!
告诉你给秘密,下面的这段代码等于上面的那段代码!
#includeint main(){int a=0; int b=0; if(a==1){if(b==2){printf("hehe\n"); }else{printf("haha\n"); }}return 0; }
看完上面的代码估计你就明白了!else是与最近的if匹配,而不是与对其的if匹配!
switch语句:switch语句常常用于多分支的情况。
switch(整形表达式){语句项;}语句项//是一些case整形常量表达式:语句
#includeint main(){int time; scanf("%d",&time); switch(time){case 1:printf("春天\n"); break; //break是指跳出循环case 2:printf("夏天\n"); break; case 3:printf("秋天\n"); break; case 4:printf("%冬天\n"); break; default://default是指case没有规定的位置,可以写在任何一个case标签可以出现的位置printf("输入错误\n"); break; }}
循环语句:循环结构是在一定条件下反复执行某段程序的流程结构,被反复执行的程序被称为循环体。
while循环
while(表达式)循环语句;
#includeint main(){int i=0; while(i<=10){i++; if(i==5)continue; //continue是用于终止本次循环,然后直接跳转到while语句的判断部分,进行下一次循环的入口判断printf("%d ",i); }return 0; }
do~while循环:循环至少执行一次,不是经常使用!
do循环语句;while(表达式);//与while语句的区别就是do~while是先执行,然后再判断,while语句相反!
for循环
for(表达式1:表达式2:表达式3)循环语句: 表达式1:初始化 表达式2:判断 表达式3: 调整
#define _CRT_SECURE_NO_WARNINGS 1//打印乘法口诀表#includeint main(){int i,j; for(i=1; i<=9; i++){for(j=1; j<=i; j++){printf("%d*%d=%d ",j,i,j*i); }printf("\n"); }return 0; }
总结 【深入了解C语言结构化的程序设计】本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注脚本之家的更多内容!
推荐阅读
- 深入理解Go之generate
- 我们重新了解付费。
- 拍照一年啦,如果你想了解我,那就请先看看这篇文章
- 【生信技能树】R语言练习题|【生信技能树】R语言练习题 - 中级
- 一起来学习C语言的字符串转换函数
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- C语言浮点函数中的modf和fmod详解
- C语言中的时间函数clock()和time()你都了解吗
- 【1057快报】深入机关,走下田间,交通普法,共创文明
- 操作系统|[译]从内部了解现代浏览器(1)