1. if语句
1.1 if 语句
if语句的语法形式如下:
if (表达式为真)
{
执行语句;
}
例子:输入一个整数,判断是否为奇函数
#include <stdio.h>
int main()
{
int num = 0;
scanf("%d",&num);
if(num % 2 == 1)
{
printf("%d 是奇数\n");
}
return 0;
}
运行结果:
1.2 if... else... 语句
if...else...语句的语法形式如下:
if (表达式1为真)
{
执行语句1;
}
//若表达式1为假则执行else语句
else
{
执行语句2;
}
例子:输入一个整数,判断是否为奇函数,还是偶函数
#include <stdio.h>
int main()
{
int num = 0;
scanf("%d", &num);
if (num % 2 == 1)
{
printf("%d 是奇数\n", num);
}
else
{
printf("%d 是偶函数\n", num);
}
return 0;
}
运行结果:
注意:写if...else...语句时,if和else语句后面最好加上{},如若不加的话,则默认都只执行一条语句。比如:
#include <stdio.h>
int main()
{
int age = 0;
scanf("%d", &age);
if (age < 18)
printf("未成年,好好学习\n");
printf("恭喜你,成年了!\n");
return 0;
}
运行结果:
上面的代码,你会发现输⼊的值不管是<18 还是>=18,"恭喜你,成年了!" 都会打印在屏幕上。
这是因为 if 语句只能控制⼀条语句,就是 printf("未成年,好好学习\n"); ,if语句为真,则打印未成年好好学习, if语句为假,则不打印,对于 printf("恭喜你,成年了!\n"); 是独⽴存在的,不管if语句的条件的真假,都会被执⾏。 所以,我们使用if...else...语句时,最好在if和else语句的后面都加上{},以免产生不必要的误会。
1.3 if... else if... else... 语句
if... else if... else... 语句的语法形式如下:
if (表达式1为真)
{
执行语句1;
}
else if (表达式2为真)
{
执行语句2;
}
else if (表达式)
...
else
{
执行语句;
}
例子:输⼊⼀个年份year,判断year是否是闰年
#include <stdio.h>
int main()
{
int year = 0;
scanf("%d", &year);
if (year % 4 == 0 && year % 100 != 0)
{
printf("是闰年\n");
}
else if (year % 400 == 0)
{
printf("是闰年\n");
}
else
{
printf("不是是闰年\n");
}
return 0;
}
运行结果:
2. switch语句
除了 if 语句外,C语⾔还提供了 switch 语句来实现分⽀结构。 switch 语句是⼀种特殊形式if...else 结构,⽤于判断条件有多个结果的情况。它把多重 的 else if 改成更易⽤、可读性更好的形式。
switch语句的语法形式如下:
switch (参数) //参数不能为浮点型
{
case 参数值1: 内容1;
break;
case 参数值2: 内容2;
break;
...
default: 内容;
break;
}
上⾯代码中,根据参数不同的值,执⾏相应的 case 分⽀。如果找不到对应的值, 就执⾏ default 分⽀。
例子:输⼊⼀个1~7的数字,打印对应的星期几
//输⼊⼀个1~7的数字,打印对应的星期⼏
#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:printf("星期三\n"); break;
case 4:printf("星期四\n"); break;
case 5:printf("星期五\n"); break;
case 6:printf("星期六\n"); break;
case 7:printf("星期日\n"); break;
default:printf("输入出错\n"); break;
}
return 0;
}
运行结果:
3. while循环
while语句的语法形式如下:
while (表达式为真)
{
执行语句;
}
例子:打印1~10的数字
#include <stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
printf("%d ", i);
i = i+1;
}
return 0;
}
运行结果:
4. do while循环
do while语句的语法形式如下:
do
{
执行语句;
}
while (表达式为真)
例子:打印1~10的数字
#include <stdio.h>
int main()
{
int i = 1;
do
{
printf("%d ", i);
i = i + 1;
}while(i<=10);
return 0;
}
运行结果:
5. for循环
for语句的语法形式如下:
//表达式1 ⽤于循环变量的初始化
//表达式2 ⽤于循环结束条件的判断
//表达式3 ⽤于循环变量的调整
for(表达式1; 表达式2; 表达式3)
例子:打印1~10的数字
#include <stdio.h>
int main()
{
int i = 0;
for(i=1; i<=10; i++)
{
printf("%d ", i);
}
return 0;
}
运行结果: