什么叫语句?
一个分号隔开的就是一条语句
printf("这是一条语句");
分支语句(选择语句)
- if语句
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int age = 10;
if (age < 18)
{
printf("未成年\n");
printf("不能谈恋爱");
}
else
{
if (age >= 18 && age < 28)
printf("青年\n");
else if (age >= 28 && age < 58)
printf("壮年\n");
else if (age >= 58 && age < 90)
printf("老年\n");
else
printf("高寿\n");
}
}
-
悬空else
#include<stdio.h> int main() { int a = 0; int b = 2; if (a == 1) if (b == 2) printf("hehe\n"); else printf("haha"); return 0; }
结论:else 和最近的未匹配的 if 进行匹配。
-
if 书写形式的对比
//代码1
if (conditifion){
return x;
}
return y;
//表示的含义是 如果条件成立返回x,否则返回y
//代码2
if (conditifion)
{
return x;
}
else
{
return y;
}
//很清晰很直观的可以看出整个代码的结构
//代码3
#include<stdio.h>
int main()
{
int num = 4;
if (num = 5) //=是赋值,而==是判断相等 这里语法没有错误,容易产生bug
printf("hehhehe\n");
return 0;
}
//代码4
#include<stdio.h>
int main()
{
int num = 4;
if (5==num) //将常量放在前面,就能很好的规避代码3的问题
printf("hehhehe\n");
return 0;
}
//这是一个很好的编程习惯
- 练习
输出100以内的奇数
//代码1
#include<stdio.h>
int main()
{
int i = 1;
while (i <= 100)
{
if (1 == i % 2)
printf(" %d", i);
i++;
}
return 0;
}
//代码2
#include<stdio.h>
int main()
{
int i= 1;
while (i <= 100)
{
printf("%d ", i);
i += 2;
}
return 0;
}
- switch语句
#include<stdio.h>
int main()
{
int day = 0;
scanf("%d", &day);
switch (day)
{
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3: