C语言入门(二)---七种控制结构
来源:互联网 发布:docker mysql 持久化 编辑:程序博客网 时间:2024/05/29 09:12
C语言中,一共有七种控制结构顺序结构、三种选择结构(if、if…else、switch)、三种循环结构(while、for、do…while)。任何一种程序,根据所需要实现的不同算法,都可以由着七种结构组合而成。
顺序结构
顺序结构是C语言的一种内置结构,C语言从main函数开始,顺序执行。
if单分支结构
语法: if(判断条件)
{
语句;
}
用法示例:
#include<stdio.h>
int main(void)
{
int a=4;
if(a>=3)
printf("haha,请我吃饭!");
return 0;
}
补充一个用if 来排大小的:
#include<stdio.h>
int main(void)
{
int a,b,c,i;
printf("pls enter 3 integer:\n);
scanf("%d%d%d",&a,&b,&c);
if(a>=b)
{
i=a;
a=b;
b=i;
}
if(b>=c)
{
i=b;
b=c;
c=i;
}
if(a>=b)
{
i=a;
a=b;
b=i;
}
printf(“from min to max is :%d,%d,%d\n”,a,b,c);
return 0;
}
if…else 双分支结构
语法:if(判断条件)
{
语句体;
}
else
{
语句体;
}
用法示例:
#include<stdio.h>
int main(void)
{
int score;
printf("请输入成绩:\n");
scanf("%d分",&score);
if(score>=60)
{
printf("%d分 恭喜您,通过了!",score);
}
else
{
printf("%d分 十分抱歉,你需要重修!",score);
}
return 0;
}
c 语言中有唯一一个三目运算符(?:)作用和if else一样
语法结构:判断条件?表达式1:表达式2
判断条件为真时,执行表达式1,否则执行表达式2。
用法示例:
#include<stdio.h>
int main(void)
{
int score;
printf("请输入成绩:\n");
scanf("%d分",&score);
score>=60?printf("%d分 恭喜您,通过了!",score):printf("%d分 十分抱歉,你需要重修!",score);return 0;
}
switch 多分支语句
语法结构:switch(表达式1)
{
case 表达式2:
语句体;
break;
case 表达式3:
语句体;
break;
……
default:
break;
}
注意:1,case表达式后为冒号,一定不能丢;
2,case 语句体后若没有break,则会顺次执行,直到遇到break 或所有case 执行完毕,所以break一定不能 丢,但也有例外;
3,若几个相邻的case ,语句体一样,则前面case 的语句体和break都可以省略,但分号(;)要保留; 4, default 视情况而定并不是必须的,default 后的break可省略,因为已经是最后了,有没有break 此时程序 都会跳出switch。
用法示例:
#include<stdio.h>
int main(void)
{
int i;
printf("请输入一个整数:\n");
scanf("%d",&i);
switch(i)
{
case 1:
printf("一号门开\n");
break;
case 2:
printf("二号门开\n");
break;
case 3:
printf("三号门开\n");
break;
default:
printf("您的输入有误,请重输\n");
break;
}
return 0;
}
while 循环结构
语法结构:while(循环条件)
{
循环体;
循环增/减量;
}
用法示例:
#include<stdio.h>
int main(void)
{
int i=1;
int sum=0;
while(i<=100)
{
sum=sum+i;
i++ ;
}
printf("1+2+3+…+100=%d",sum);
return 0;
}
do …while 循环
语法结构:do
{
循环体;
循环增/减量;
}
while(循环条件)
do while 循环 是先执行循环体,再判断条件,所以至少要执行一次循环语句。
用法示例:
#include<stdio.h>
int main(void)
{
int i=1;
int sum=0;
do
{
sum=sum+i;
i++ ;
}
while(i<=100)
printf("1+2+3+…+100=%d",sum);
return 0;
}
for 循环
语法结构: for(表达式1;表达式2;表达式3)
{
循环体;
}
注意:1、三个表达式之间用分号(;)隔开;
2、表达式1为初始值,表达式2为判断条件,表达式3为变量变化表达式,若某一表达式中有两个条件,则这 两条件之间用逗号(,)隔开。
用法示例:
#include<stdio.h>
int main(void)
{
for(i=1,sum=0;i<=100;i++)
{
sum=sum+i;
}
printf("1+2+3+…+100=%d",sum);
return 0;
}
}
- C语言入门(二)---七种控制结构
- C语言基础知识点(二)三大控制结构
- C语言入门(二十)结构体
- C语言学习入门 (七) 结构体和枚举
- C语言控制结构
- C语言控制结构
- c语言入门(七)函数
- C语言结构体(七)
- C 语言中的控制结构
- 05.C语言控制结构
- C语言控制结构 练习题
- c语言入门(三)分支结构
- c语言入门(八)结构体
- C语言结构体(二)
- C++编程入门系列之七(算法的基本控制结构之循环结构)
- 嵌入式 Linux C语言(七)——结构体
- 控制结构(二)
- C语言回顾 七 结构体
- SpringBoot入门(七)-初识WebSocket
- SpringBoot入门(八)-MAVEN的多环境…
- SpringBoot入门(九)-SpringMVC的In…
- SpringBoot入门(十)-SpringEL和资…
- 数字三角形
- C语言入门(二)---七种控制结构
- [Unity热更新]tolua# & LuaFramework(一):基础
- verilog源码积累:ram和axi slaver
- java.lang.NoClassDefFoundError:j…
- SpringBoot入门(十二)-全局捕获异…
- SpringBoot入门(十三)-热部署
- SpringBoot入门(十四)-注册servlet…
- 加密出错!Illegal key size
- 1001. 害死人不偿命的(3n+1)猜想 (15)