查了好多资料,发现还是不全,干脆自己整理吧,最少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧!
if语句
如果...或者...否则
也就是说,if语句许允序程通过测试表达式的值从两种选项中选择一项。
if语句表达式
if(表达式1){
语句1;
}else if(表达式2){
语句2;
}else{
语句3;
}
语句next;
注意:1.如果if前面没有语句,加上分号
2.else if 可以现出0 ~ n次
3.else 可以现出0 ~1次
4.分支中只有一条一句的时候可以省略{}
面下我们看段代码:
面下我们看看入输 年 月 ,然后输出这个月有多少天
要注意,在
if
语句的模版中,语句是一条而不是多条,如果想要
if
语句出口
i
两条或者更多条语句,可以应用复合语句
复合语句:
一对大括号
{}
括起来的一组语句,编译器看成一条语句来理处,
{
....
....
}
就近准则:多个
if
后跟
else
的时候,
else
老是与近最的
if
相搭配
switch
语句
在某些情况下 ,须要表达式和多个值行进比拟,找出匹配的值数,行执特定的操纵
C
语言供给了
switch
语句作为
if
语句的换替
switch(
控制表达式
){
case
常量表达式
1:
语句
1; break;
case
常量表达式
2:
语句
2; break;
...
default: ....
}
控制表达式:算计结果是整形,不能是浮点数或者字符串。
switch
前面必须着跟由
()
括起来的整形表达式。
C
语言把字符看成数整来理处,因此
switch
也可以对字符行进判断
常量表达式:不能包括量变或者函数用调,终究结果必须是数整。常量表达式很像通普的表达式,但是不能包括量变或者函数的用调,
5
是常量表达式,
5+10
也是常量表达式,但是
n+10
不是常量表达式
(
除非
n
是表现常量的宏
)
,分支号标中的常量表达式必须是数整
(
也可所以字符
)
个一每分支中可以包括多条语句,可以不应用
{}
注意:不许允复重的分支存在
各个分支之间的序顺是不定固的。
break
作用:行执
break
语句的时候,致导序程的行执程流跳出
switch
语句,继承行执
switch
前面的语句
须要
break
语句是由于
switch
语句实际上是一种基于算计的跳转,对控制表达式求值的时候,控制会跳转到与
switch
表达式的值数想匹配的分支表利益,分支号标只是一个明说
switch
部内位置的记标。在行执完分支中的最后一条语句的时候,序程控制向下跳转到下一个分支的第一条语句上,从而疏忽了下一个分支号标。如果没有
break
语句
(
或者其他的某种跳转语句
)
,控制将会从一个分支继承到下一个分支。
面下我们看看序程
(
对
1~100
分之间的得分行进评级
)
环循语句
环循就是复重行执环循体(
语句块
)
的一种语句,在
C
语言中,个一每环循都有一个控制表达式。每次行执环循体的时候,都要对控制表达式求值。如果表达式为真,那么继承行执环循。
C
语言供给了三种环循语句:
while do
—
while for
语句。当然
goto(
无条件跳转
)
语句也可以行进环循的控制
for
环循
for
环循很适合在应用”计数”量变的环循中,当然,这不是它的定限
1.for(
表达式
1;
表达式
2;
表达式
3){
语句
;
}
表达式
1
:环循条件的初始化
表达式
2
:控制环循的条件
表达式
3
:修改环循量变,是环循趋于结束
(
环循的条件为假
)
必定要注意
for环循中各个表达式的行执序顺
看看
for
环循的行执程流图:
2.for
环循的习惯用法
for(i = 0;i < n;i++)...
for(i = 0;i <= n;i++)...
for(i = n;i > 0;i--)...
for(i = n - 1;i >= 0;i--)...
3.在
for
环循中省略表达式
语句
for
环循远比现在看到的活灵,常通
for
环循用三个表达式来控制环循,但是一些环循可能不须要这么多,因此
C
语言许允省略意任或者部全的表达式
就说下面的那个例子,我们也可以写成这样:
int i = 1;
for(;i < 11;i++){
printf("1 = %2d\n",i);
}
注意:保存第一个表达式和第二个表达式之间的分号,即使省略掉某些表达式,表达式之间的分号也是必须要写的。
上的那个例子,我们还可以这样写:
int i = 1;
for(i = 1;i < 11;){
printf("1 = %2d\n",i++);
}
这个明说白我们也可以应用量变
i
在环循体行进自加操纵
但省略掉第二个表达式,那么默为认真,
for
环循不会止终。那么我们可以在环循体中加增
break
语句,跳出环循
但我们省略掉第一个和第三个表达式的时候,那就和
while
环循没什么区别了。
在
C99
中,语句
for
的第一个表达式可以换替为一个明声,这个特性可以让我们明声一个于用环循的量变
如:
for(int i = 0;i < 10;i++)
....
须要注意的是,应用这样情势编写完序程后之,在编译的时候须要加上
-std=c99
,这样就不会报错了
如:
逗号运算符
某些时候我们可能爱好编写两个
(
或者多个
)
初始表达式,或者希望在没次环循中对几个量变行进自增操纵,应用逗号表达式作为
for
环循语句第一个或者第三个表达式可以实现这些法想:
for(i = 0,j = 0;...;printf(),i++,j--)
表达式
1
,表达式
2
算计程过
第一步:先算计表达式
1
,将算计所得的过记丢掉
第二部:算计表达式
2
,将算计结果作为表达式的终究结果
面下我们写短代码:相信大家的英文水平能看懂哦。
for
环循的嵌套
应用
for
环循嵌套可以实现一些庞杂的算法:
for(){
for(){
....
}
}
略微玩一下,
99
乘法表;嘿嘿
while
环循
while(
表达式
)
语句
判断表达式的结果,如果为真,行执语句,返来回继承判断表达式,环循往复,道知表达式的结果为假
int i = 1;
while(i < 11 ){
printf(“%d ”,i++);
}
printf(“\n”);
C
语言中两种经常使用的无限环循
(
死环循
)
方法:
1.while(1)
语句
2.for(;;;)
语句
来点代码:
do
—
while
环循
语句
do
—
while
:
do{
环循体
;
}while(
表达式
);
注意:
do - while
前面有分号
虽然序程中
while
语句现出的次数比
do - while
语句多,但是后者对于最少一次的环循说来非常的便利
空语句
1.空语句经经常使用来编写空环循体的环循
2.C
序程员习惯性的把空语句独单放在一行
3.不小心在
if,while,for
中的圆括号后放置分号会创立空语句
break coutinue
语句
break
:
switch
语句:跳出
switch
语句
环循语句:跳出环循
coutinue
:只能适用在环循中
结束本次环循,开始下一次环循
goto
语句
无条件跳转
(
不推荐应用
),
就不多做绍介了
label(
标识符
):
语句
;
...
注意标识符的定名范规
不要省略标识符前面的冒号
|
首发址地http://www.bcwhy.com/thread-18659-1-1.html
文章结束给大家分享下程序员的一些笑话语录:
腾讯总舵主马化腾,有人曾经戏称如果在Z国选举总统,马化腾一定当选,因为只要QQ来一个弹窗”投马总,送Q币”即可。