C语言最基本最常用的语句
程序的三种基本结构
顺序结构:程序按照顺序从上往下依次执行。
选择结构:分为但分支结构,多分支结构。
循环结构:当型循环结构(先判断在执行),直到型循环结构(先执行一次循环体再判断)。
C语言五大类语句
控制语句:完成程序流程控制,包括条件、循环、分支等。
函数调用语句:由函数调用加分号构成。
表达式语句:在表达式后面加分号构成,常用的有赋值语句。
空语句:仅包含一个分号的语句。
复合语句:由大括号{ }括起来的语句序列。
if语句
if语句常用的的三种形式:
形式一:if(x>y){ printf("%d",x); }
形式二:if(x>y){ max=x; }eles{ max=y; }
形式三:if(expr) statement else if(expr2) statement else if(expr3) statement …
注意: if后面只执行一条语句,执行多条语句时需加“{}”括号。if语句嵌套(即一条语句中又嵌入一个条件语句,推荐小于五层)。
例:输入两数并判断其大小。
#include<stdio.h>
void main()
{
int x,y;
printf("Enter integer x,y:");
scanf("%d,%d",&x,&y);
if(x!=y)
{
if(x>y)
printf("X>Y\n");
else
printf("Y>X\n");
}
else
printf("X==Y\n");
}
switch 语句
形如:
switch( 表达式)
{
case E1: 语句组 1;
break;
case E2: 语句组 2;
break;
………
case En:语句组 n;
break;
[default: 语句组 ;语句组 ;break;]
}
注意:E1,E2,…En是常量表达式,且值必须互不相同,起语句标号作用,用break才能跳出,case后可包含多个可执行语句,且不必加{ },switch可嵌套,多个case可共用一组执行语句。
例:
#include<stdio.h>
void main()
{
int x=1,y=0,a=0,b=0;
switch(x)
{
case 1:
switch(y)
{
case 0: a++;
break;
case 1: b++;
break;
}
case 2: a++;b++;
break;
case 3: a++; b++;
}
printf("\n a=%d,b=%d",a,b);
}
结果:a=2,b=1
循环结构
能实现循环结构的语句:
· 用goto 和 if 构成循环
· while 语句
· do ~ while 语句
· for 语句
goto循环语句
例:用goto语句求和(1~100)
#include<stdio.h>
int main()
{
int i,sum=0;i=1;
loop: if(i<=100)
{
sum+=i;
i++;
goto loop;
}
printf("%d",sum);
return 0;
}
while循环(先判断表达式后执行循环体)
例:用while语句求和(1~100)
#include<stdio.h>
int main()
{
int i,sum=0;i=1;
while(i<=100)
{
sum=sum+1;
i++;
}
printf("%d",sum);
return 0;
}
do~while循环(先执行一次循环体然后判断表达式)
例:用do…while语句求和(1~100)
#include<stdio.h>
int main()
{
int i,sum=0;i=1;
do{
sum+=i;i++;
}while(i<=100);
printf("%d",sum);
return 0;
}
for循环语句
for语句一般应用形式:
for(循环变量赋初值;循环条件;循环变量增值)
{
循环体语句;
}
例:用for循环语句求和(1~100)
#include<stdio.h>
int main()
{
int sum=0;
for(int i=1;i<=100;i++)
sum+=i;
printf("%d",sum);
return 0;
}
循环嵌套
· 三种循环可以互相嵌套,层数不限。
· 外层循环可包含两个以上内循环,但不能相互交叉。
· 嵌套循环的执行流程。注意:-从外层跳入内层
-跳入同层的另一循环
-向上跳转
break语句和continue语句
· break语句功能:
在循环语句和switch语句中,终止并跳出循环体或开关体。说明:
break只能终止并跳出最近一层的结构。
break不能用于循环语句和switch语句之外的任何其它语句之中。
· continue语句功能:
结束本次循环,跳过循环体中尚未执行的语句,进行下一次是否执行循环体的判断。
注意:continue仅用于循环语句中。