本来上节讲完switch,这节应该接着讲的,但开始下一节之前,我想带着大家复习下if语句。
因为下节会用到,且难度增加。
步入正题~
if
结构:
含义:
如果表达式的值为真,则执行其后的语句,否则不执行该语句。
Question1:学校入选篮球队的资格条件为身高必须大于等于180CM,小明身高185CM,那么小明能入选吗?
代码:
#include <stdio.h>
int main()
{
int height = 185;
if(height>=180)//条件判断
printf("恭喜小明可以参加校篮球队\n");
return 0;
}
if-else
Question2:判断一个年份是闰年还是平年。
代码:
#include<stdio.h>
int main(){
int year;
printf("请输入一个年份:");
scanf("%d",&year);
if((year%4==0&&year%100!=0)||year%400==0)//符合闰年的条件
printf("%s","\n这一年是闰年\n");
else
printf("%s","\n这一年是平年\n");
return 0;
}
多重if-else
Question3:
某商家实行积分政策,积分兑换规则如下:
积分>=800可换东方红拖拉机一台
积分>=300并且<800可换大号不锈钢盆一个;
积分>=100并且<300可换抽纸一包;
积分>=50并且<100可换牙刷。
代码判断:李光头有500积分,问他可以换购什么?
代码:
#include <stdio.h>
int main()
{
int score;
printf("请输入消费者的积分:");
scanf("%d",&score);
if(score>=800)
printf("\n可换东方红拖拉机一台\n");
else if(score>=300)
printf("\n可换大号不锈钢盆一个\n");
else if(score>=100)
printf("\n可换抽纸一包\n");
else if(score>=50&&score<100)
printf("\n可换牙刷一个\n");
else
printf("\n该积分不可兑换任何物品\n");
return 0;
}
运行测试:
嵌套if-else
Question4:获奖学金条件为:平均成绩90分以上,并且入学满一年的学生。小刚进入学校一学期(半年),平均成绩95分以上,问小刚是否有资格获奖学金?
代码:
#include <stdio.h>
int main()
{
int score=90; //平均成绩为90
float year=0.5; //刚刚进入学校半年
if(score>100)
{
if(year>=1)
{
printf("%s\n","恭喜你获得奖学金\n");
}//if
else
{
printf("%s\n","很遗憾,期望你再接再厉\n");
}//else
}// if(score>100)
else
{
printf("%s\n","很遗憾,期望你再接再厉\n");
}
return 0;
}
运行结果: