int hour1,minute1;
int hour2,minute2;
scanf("%d %d",&hour1,&minute1);
scanf("%d %d",&hour2,&minute2);
int ih=hour2-hour1;
int im=minute2-minute1;
if(im<0){
im=60+im;
in--; //如果符合if语句的内容则直接执行
}
printf("时间差是%d小时%d分\n",ih,im);
关系运算符:计算两个值之间的关系叫做关系运算
== 相等 != 不相等 >=大于等于 <=小于等于
关系运算的结果:当两个值的关系符合关系运算符的预期时,关系运算的结果为整数1,
否则为整数0
printf("%d\n",5==3;)
printf("%d\n',5>3);
printf("%d\n",5<=3);
优先级:所有的关系运算符的优先级比算术运算的低,但是比赋值运算的高
7>=3+4; //3和4先相加
int r=a>0; // a先大于0,r再等于a
判断是否相等的==和!=的优先级比其他的低,而连续的关系运算是从左到右进行的
5>3==6>4
6>5>4 //6>5成立是1,1>4不成立是0,最终结果是0
a==b==6
a==b>0
找零计算器:
//初始化
int price =0;
int bill =0;
// 读入金额和票面
printf("请输入金额:");
scanf("%d",&price);
printf("请输入票面:");
scanf("%d",&bill);
//计算找零
printf("应该找您:%d\n",bill-price);
else否则的话
//初始化
int price =0;
int bill =0;
// 读入金额和票面
printf("请输入金额:");
scanf("%d",&price);
printf("请输入票面:");
scanf("%d",&bill);
//计算找零
if(bill>=price{
printf("应该找您:%d\n",bill-price)
}
else{
printf("你的钱不够\n");
}
if语句
if语句这一行结束的时候并没有表示语句结束的“;” 而后面的赋值语句写if的下一行,并且缩进了,在这一行结束的时候有一个表示语句结束的";"。这表明赋值语句是if语句的一部分,if语句可以拥有和控制这条赋值语句,决定他是否要被执行。
if(total>amount)
total+=amount+10; //是整个if语句
计算薪水:
const double RATE=8.25;
const int STANDARD=40;
double pay=0.0;
int hours;
printf("请输入工作的小时数:");
scanf("%d",&hours);
printf("\n");
if (hours>STANDARD)
pay=STANDARD*RATE+(hours-STANDARD)*(RATE*1.5);
else
pay=hours*RATE;
printf("应付工资:%f\n",pay);
嵌套的if-else
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
int max=0;
if(a>b)
{
if(a>c){
max=a;
}else{max=c;
}
}
else
{ if(b>c){max=b;
}else{max=c;
}
}
printf("The max is %d\n",max);
嵌套的判断:当if的条件满足或者不满足的时候要执行的语句也可以是一条if或if-else语句,这就是嵌套的if语句
if(code==READY)
if(count<20)
printf("一切正常\n");
else
printf("继续等待\n");
tips:在if或else后面总是用{},即使只有一条语句的时候