目录
输入三个整数,对其中奇数和偶数分别求和并输出。(要求自定义函数并调用)
2.输入整数1-7任意数字,输出对应星期几的英文,比如输入3,输出Wednesday。若输入1-7以外数字则提示输入错误。(使用switch)
一、if选择结构
1.单分支选择结构
格式:if(表达式) 语句
说明:
表达式可以使任意表达式,语句也可以是复合语句。
例题:当x=1的时候输出x=1,当x=0时输出x=0
#include<stdio.h>
int main()
{
int x=0;//对x进行初始化
if(x)//x等价于x!=0
printf("x=1\n");//条件成立输出x=1
printf("x=0\n");//不成立输出x=0
return 0;
}
输出结果:
#include<stdio.h>
int main()
{
int x=1;//对x进行初始化
if(x)//x等价于x!=0
printf("x=1\n");//条件成立输出x=1
printf("x=0\n");//不成立输出x=0
return 0;
}
输出结果:
可以看出与我们的预想不一样,这里本应该输出x=1,因为if判定成功我们执行了printf("x=1\n");这一句,当这一句执行这一句时,我们会接着执行下一句printf("x=0\n");所以会得到两个结果。
这个问题如何解决呢?
2.双分支选择结构
格式:if(表达式)语句
else 语句
说明:
整个if……else 是一个语句,else必须与if匹配,不能单独使用。
上面单分支结构不能实现对于两种情况的正确输出这个时候if……else就显得尤为重要了废话不多说请看:
#include<stdio.h>
int main()
{
int x=1;//对x进行初始化
if(x)//x等价于x!=0
printf("x=1\n");//条件成立输出x=1
else
printf("x=0\n");//不成立输出x=0
return 0;
}
输出结果:
这个时候我们就能达到想要的效果了 。
例题:判断我们输入的年份是否为闰年
- 第一步分析题目,我们需要一个变量来装输入的数据,还需要一个变量来记录。
- 第二部弄清楚如何判断为闰年,当年份能整出4但又不能整出100时或者能直接整出400的时候为闰年。
- 接下来就是编写代码啦
#include<stdio.h> int Year(int year); int main() { int year, flag; printf("请输入年份:"); scanf("%d",&year); flag=Year(year);//函数调用 if(flag!=0)//等价于flag { printf("%d为闰年\n",year);//flag不为0,就代表为闰年 } else { printf("%d为平年\n",year);//flag为0,就代表为平年 } return 0; } int Year(int year) { int flag=0;这里我们将flag初始化,就避免在if里再写一个else了 if(year%4==0 && year%100!=0 || year%400==0) flag=1;//条件成立将1的值赋给flag,否则就结束if判断 return flag; }
输出结果:
在生活中我们面临的选择远远不止两个,显然if……else这魅力就不行了呀,不急我们看下一个
3.多分支选择结构
格式:if(表达式)语句
else if(表达式2)语句
……
else if(表达式n)语句n
else 语句n+1
直接整个例题感受一下吧!