if语句
表达式
if(表达式)
{
语句;
}
若表达式为真(非零),则执行语句
if(表达式)
{
语句1;
}
else
{
语句2;
}
若表达式为真(非零)执行语句1,否则执行语句2
if(表达式1)
{
语句1;
}
else if(表达式2)
{
语句2;
}
else
{
语句3;
}
else总是与离它最近的if配对
题目:判断一个数是否为奇数
#include<stdio.h>
int main()
{
int i =0;
scanf("%d\n",&i);
if(i%2==0)
{
printf("i为偶数");
}
else
{
printf("i为奇数");
}
return 0;
}
switch语句
表达式
switch语句
常用于多分支语句
switch(整型表达式)
{
语句项;
}
语句项的解释:
case 整型常量:
语句;
break;
case决定入口,break决定出口,break用于跳出switch语句。
#include<stdio.h>
int main()
{
int color = 0;
scanf("%d\n",&color);
switch(color)
{
case 1:
printf("黄种人");
break;
case 2:
printf("白种人");
break;
case 3;
printf("黑种人");
break;
default:
printf("输入错误");
}
return 0;
}
当输入的数字超过规定范围时,此时default作为出口,输出错误。
最好每个switch语句中都放入default
#include<stdio.h>
int main()
{
int v1 = 0;
int v2 = 0;
char ch = "";
while ((ch = getchar()) != '#')
{
switch (ch)
{
defualt:
v1++;
case 'a':
case 'h':
case 'o':
v2++;
}
}
printf("%d %d", v1, v2);
return 0;
}
#include<stdio.h>
int main()
{
int v1 = 0;
int v2 = 0;
char ch = "";
while ((ch = getchar()) != '#')
{
switch (ch)
{
case 'a':
case 'h':
case 'o':
v2++;
defualt:
v1++;
}
}
printf("%d %d", v1, v2);
return 0;
程序不会回去执行default,而且从匹配的位置一直往下执行而已,直到遇见break