1.关系运算
语法格式:
<表达式> 关系运算符 <表达式>
双目运算符:
>(大于),<(小于),>=(大于等于),<=(小于等于),优先级相同
==(等于等于),!=(不等于),优先级相同且低于以上四个运算符的优先级
2.逻辑运算
语法格式:
1.<表达式> 逻辑运算符 <表达式>
2.!<表达式>
逻辑运算符:
单目:!(优先级最高)
双目:&&(逻辑与),||(逻辑或)
例如:打印1000年到2000年之间的闰年
//打印1000年到2000年之间的闰年
#include<stdio.h>
int main()
{
int i = 0;
for (i = 1000; i <= 2000; i++)
{
//闰年条件:1.能被4整除,不被100整除。2.能被400整除
if ((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0))
printf("%d ", i);
}
return 0;
}
3.条件运算
三目运算法
语法格式:
<表达式1> ?<表达式2> :<表达式3>
例如:输入两个整数,比较大小
#include<stdio.h>
int main()
{
int a ,b ,max ;
scanf("%d %d",&a,&b) ;
(a>b) ? (max=a):(max=b) ;//比较a,b大小,大的放入max
printf ("大的数是%d\n" ,max) ;
return 0 ;
}
4.if 语句
a.单分支选择结构
语句格式:
if(表达式)
语句块;
为避免出错,建议语句块加括号:
if(表达式)
{
语句块;
}
例题:你是天才吗?输入你的智商,如果>=140,则打印“Genius”
//你是天才吗?
#include <stdio.h>
int main()
{
int n = 0;
while (scanf("%d", &n) != EOF)//多组输入,输入错误,EOF=-1,结束程序
{
if (n >= 140)
printf("Genius");
}
return 0;
}
b.双分支选择结构
语句格式:
if(表达式)
{
语句块;
}
else
{
语句块;
}
例如
if(grade>=60)
printf("%d,passed\n",grade);
else
printf("%d,failed\n",grade);
c.多分支选择结构
例如:
if (条件表达式1)
{
语句块1
}
else if (条件表达式2)
{
语句块2
}
……
else
{
语句块3
}
5.switch 语句
格式:
switch(表达式)
{
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
default;
语句体n+1;
break;
}
//例题:星期
#include<stdio.h>
int main(){
int week;
scanf("%d",&week);
switch(week){
case 1://注意“:”不要写成“;”
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
case 7:
printf("星期日\n");
break;
default:
printf("你输入的星期数有误\n");
break;
}
}