int main()
{
int age = 10;
if (age < 18)
{
printf("未成年\n");
printf("不能早恋\n");
}
else if (age >=18 && age<28)
printf("青年\n");
else if (age >= 28 && age < 45)
printf("壮年\n");
else if (age >= 45 && age < 90)
printf("老年\n");
else
printf("活化石\n");
return 0;
}
还有就是会出现的小问题,这里举例一个:
int main()
{
int num = 4;
//if (5 == num)
//{
// printf("hehe\n");
//}
if (num = 5)// = - 赋值 == - 判断相等
{
printf("hehe\n");
}
return 0;
}
这里还是会打印出hehe,因为=是赋值,==才是判断相等。
怎么用if语句来求100以内的所有奇数呢?
这里我们用两种方法,代码如下:
int main()
{
int i = 0;
while (i<=100)
{
if (1 == i % 2)
printf("%d \n",i);
i++;
}
return 0;
}
int main()
{
int i = 1;
while (i <= 100)
{
printf("%d ", i);
i += 2;
}
return 0;
}
这里+=2的意思就是i+2 这样子1+2=3+2=5+2=7...就是所以奇数啦。
2.switch语句
假设输入周一到周五是工作日,周六周天是休息日,该怎么用switch语句实现它呢,代码如下:
int main()
{
int day = 0;
scanf("%d",&day);
switch (day)//一定要是整型表达式
{
case 1:
case 2:
case 3:
case 4:
case 5://case 后面的 break 是不一定要的
printf("工作日\n");
break;
case 6:
case 7:
printf("休息日\n");
break;
default:
printf("输入错误\n");
break;
}
return 0;
}
这里case1、2、3、4省略的printf是因为switch语句在没有碰到break的时候是不会停止往下走的,这样字我们只要在case5的时候printf一个工作日加上一个break,这样即使前面1234省略了输出,打印出来的还是工作日。
default的意思是当输入的数超出你case的范围,比如这组代码最后一个是case7,但是你输入8,这时候就会输出“输入错误”。
原文:https://blog.51cto.com/15080720/2596682