一、选择结构程序设计
1.1 关系表达式与逻辑表达式
单目运算符 ! 逻辑非
算术运算符 加、减、乘、除,取模
关系运算符 > < >= <= == !=
逻辑运算符 && ||
举个例子:5>3&&8<4-!0的计算过程
1.2 if语句
if判断条件(表达式)为真,就执行某个语句,反之不执行这个语句.当然,也可以if判断条件(表达式)为真,就执行某个语句,反之用else分支执行另一个语句。
当输入值大于0时,打印“它超过了0",当输入值小于等于0时,打印“它没有超过0",具体代码如图3.1.4所示。注意,在这个例子中, if后面不能加分号,因为如果有else分支语句,那么加分号会导致编译不通过;如果没有else分支语句,那么加分号会导致i无论取何值,都会打印“它超过了0”。
#include <stdio.h>
int main()
{
int i;
while(scanf("%d",&i)!=EOF)
{
if(i>0)//if后面是不可以加分号的
{
printf("它超过了0\n");
}
else
{
printf("它没有超过0\n");
}
}
}
二、循环结构程序设计
2.1 while循环
while语句用来实现“当型”循环结构,其一般形式为“while(表达式)语句;",当表达式的值非0时,执行while语句中的内嵌语句。其特点是: 先判断表达式,后执行语句。
当黑窗口卡住,只有2种情况,
一种是卡在scanf了(这种情况手输入内容,是可以输入进去的),
另一种就是陷入死循环 ,死循环在黑窗口种输入不进去东西。
黑窗口就是用win+R,输入cmd打开的命令提示符。
出现死循环的原因:
1.while()后面加了分号
2.while语句体内没有让表达式趋近于假的操作
2.2 for循环
C语言中的for循环语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替while 循环语句.其一般形式为
for(表达式1;表达式2;表达式3)语句;
for循环语句的执行过程如下,具体流程如下
(1)先求解表达式1.
(2)求解表达式2,若其值为真(值为非0),则先执行 for语句中指定的内嵌语句,后执行第(3)步。若其值为假(值为O),则结束循环,转到第(5)步。
(3)求解表达式3.
(4)转回第(2)步继续执行.
(5)循环结束,执行for语句下面的语句。
注意:
for循环后不可以加分号
2.3 continue语句
continue 语句的作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行是否执行下一次循环的判断。其一般形式为
continue;
2.4 break语句
break语句的作用是结束整个循环过程,不再判断执行循环的条件是否成立