1.C语言语句简介
1.1概述
具有一定的逻辑功能和控制功能
1.2 C语言基本结构
顺序结构、选择结构、循环结构
①顺序结构:是指从左到右,从上到下的顺序执行程序
②选择结构:根据给予的条件判定,根据判定的结果来控制程序的运行
③循环结构:因某些原因而反复循环使用的一种程序结构。分为两种:一种是只关心循环次数,不管结果,另一种则是只关心结果,不关心循环次数。
2.九条基本语句
2.1.If语句
(1)if
格式:if(条件表达式1)
{
语句1;
}
含义:对表达式结果进行判定,结果为真则执行语句1,为假则不执行。
(2)if else
格式: If(条件表达式1)
{
语句1;
}
else
{
语句2;
}
含义:对表达式结果进行判定,结果为真则执行语句1,为假则执行else内的语句2。
(3)if else if
格式: if(条件表达式1)
{
语句1;
}
else if(条件表达式2)
{
语句2;
}
含义:对表达式1进行判定,结果为真则执行语句1,结果为假则继续判定表达式2,若表达式2结果为真则执行语句2,结果为假则不执行任何操作。
#includeint main() { int num; printf("请输入成绩n"); scanf("%d",&num); if( num>=0 && num<=59) { printf("成绩不合格n"); } else if(num<=89 && num>=60) { printf("成绩良好n"); } else if(num<=100 && num>=90) { printf("成绩优秀n"); } else { printf("输入错误n"); } }
2.2 switch语句
(1)格式:switch(整型表达式)
{
case 常量1:语句1;
case 常量2:语句2;
:
:
case 常量n:语句n;
default : 语句 n+1;
}
(2)含义:计算表达式1的值并与case的常量值作比较,若相等则执行其后的语句,并且不再进行判断,直接执行后面所有case后的语句。如果表达式的值与所有case的值都不相等则执行default
后的语句。
可用break语句来跳出switch语句
int main()
{
int n,s;
printf("输入月份:");
scanf("%d",&n);
switch(n)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: printf("本月有31天n");break;
case 2: printf("闰年输入1,平年输入2:");
scanf("%d",&s);
if(s==1)
{
printf("本月28天n");
}
else
{
printf("本月29天n");
}
break;
case 4:
case 6:
case 9:
case 11: printf("本月有30天n");break;
default : printf("月份输入错误n");
}
}
综合练习
//输入两个整数,判断第一个数能否把第二个数整除 #includeint main() { int a,b; printf("输入数值a:"); scanf("%d",&a); printf("输入数值b:"); scanf("%d",&b); if(a%b==0) { printf("能整除n"); } else { printf("不能整除n"); } }
//判断用户输入的整数 #includeint main() { while(1) { int a; printf("输入整数:"); scanf("%d",&a); if(a<0) { printf("负数n"); } else if(a>0 && a%2==0) { printf("正偶数n"); } else if(a>0 && a%2==1) { printf("正奇数n"); } } }
//编写一个简单的计数器,输入整数,计算表达式,并输出结果 #includeint main() { int data1,data2,s; char op; printf("输入要计算的整数、运算符、整数:"); scanf("%d%c%d",&data1,&op,&data2); switch(op) { case '+': s=data1+data2;printf("%dn",s);break; case '-': printf("%dn",data1-data2);break; case '*': s=data1*data2;printf("%dn",s);break; case '/': printf("%7.5fn",data1/(float)data2);break; } }
2.3 循环语句
(1)while循环语句
a)格式:while(条件表达式)
{
循环体语句;
}
b)含义:计算表达式的值如果为真则循环执行语句,如果为假则不做任何操作。
#includeint main() { int i=0; while(i<=10) { printf("i=%dn",i); i++; } }
(2)do while循环语句
a)格式:do
{
循环体语句;
}while(条件表达式);
b)含义:先执行一次循环体语句,在判定条件表达式,结果为真则再执行一次循环体语句,结果为假不做任何操作。
#includeint main() { int x=1,a; printf("是否循环,输入0或1n"); scanf("%d",&a); do { x+=1; printf("%dn",x); } while(a); }
2.4 for循环语句
(1)格式:
for(循环变量赋值语句1;循环条件表达式;变量更改语句2)
{
循环体语句;
}
(2)含义:首先根据语句1赋予循环变量的初值,按照条件表达式的规则,判断是否满足循环条件,如果满足,就执行循环体执行语句,循环体执行语句执行完后,根据语句2对循环变量进行相应的操作。
#includeint main() { int i; for(i=1;i<=100;i++) { if(!(i%7)) { printf("%dn",i); } } }
2.5 跳转语句
(1)break语句
结束离break最近的循环语句
(2)continue语句
结束本次循环,开始下一次循环
(3)return语句
主要用于结束函数,或用于返回值
(4)goto语句
让程序无条件跳转到标签位置,往下执行语句。



