目录
1.程序的结构
程序是数据结构和算法结合;
算法是解决程序问题的流程和步骤(顺序、分支、循环结构)
数据结构:将数据按照某种特定结构保存
2.分支语句(选择语句)
2.1 if语句
if(条件)//条件非零即为真
2.1.1 只有if
if(条件){执行语句}
2.2.2 if ...else
if(条件){语句1}else{语句2} // 如果为真执行if里的语句,否则执行else里的
2.2.3 if...else if ...else
多条件判断例如
#include <stdio.h>
int main()
{
int x;
scanf("%d",x);
if(x>90)
{
printf("优");
}
else if(x>80)
{
printf("良");
}
else if(x>60)
{
printf("及格");
}
else
{
printf("不及格");
}
}
2.2.4 if嵌套
if语句可以相互嵌套,但else与它最近的if配对
if(条件1){ if(条件2){语句1}else{语句2}}
2.2 switch语句
基本结构:
switch(要分情况讨论的变量)
{
case 情况1: 要执行的语句;break;//第一种情况,执行到break跳出switch
case 情况2: 要执行的语句;break;//第二种情况,执行到break跳出switch
case 情况3: 要执行的语句;break;//第三种情况,执行到break跳出switch
...
default:要执行的语句;break;// 没有匹配到上面的情况,执行此语句
}(break可以忽略,如果省略,程序匹配到某一情况后不会跳出switch,而是会一
直往下执行,直到遇到break或者把switch里的语句执行完)
3.循环语句
3.1 while
while(条件){ 循环体} // 只要条件为真就一直执行循环体
3.2 for循环
for(初始化语句l;条件判断语句;状态更新语句){循环体}
初始化语句只执行一遍也可以省略;
条件判断语句在每次执行循环体之前都会判断条件是否成立,成立了才会执行循环体,可省略;
状态更新语句在每次循环体执行完之后,都会执行一次状态更新语句,可省略
for(;;){循环体} //(语句可以省略但分号不能)
3.3 do...while
do{循环体}while(条件);//先执行在判断,至少执行一次循环体。(while是当 条件 时执行循环体,do...while是执行循环直到满足条件)
4.跳转和控制语句
4.1 break
跳出循环/switch语句
4.2 continue
break是跳出/结束整个循环,continue是结束本次循环,开始下次循环
4.3 goto
跳转到某个标签,可以跳出循环,比较灵活,慎重使用
goto语句是一种无条件流程跳转语句,通常goto语句与if语句结合使用,当满足一定条件时程序跳转到指定标号处,接着往下执行。
定义语句标识格式:语句标识:语句;
其中语句标识可以是任一个合法标识符比如POS_1、label_1等等,注意标识符后冒号不能省略
goto语句的调用语法格式为: goto 语句标号;程序将从对应 语句标号 代码出开始往下执行。
4.4 return
函数结束,在函数中返回函数参数