if
if语句不是循环语句,之所以和循环语句放到一起是因为if语句通常和循环语句嵌套使用
if语句的语法格式是,if是如果的意思。
1
if(表达式)
语句
2
if()
{
}
else
{
}
3
if()
{
}
else if()
{
}
else
{
}
4
if()
{
}
if()
{
else
{
}
}//根据需求进行嵌套
当然有如果就有除非
if(a>b)//如果a大于b,则进行下面的程序运行
{
printf("a大于b");/如果a大于b,则打印a大于b
}
else//除非则执行下面操作
{
printf("a不大于b");
}
也可以多个条件排除,如果有多条条件语句的时候,此时else的后缀条件不需要加上,就像已经知道a不大于也不等于 那就只能小于了
if(a>b)//如果a大于b,则进行下面的程序运行
{
printf("a大于b");//如果a大于b,则打印a大于b
}
else if(a == b)//如果a等于b
{
printf("a等于b");
}
else//除非则执行下面操作
{
printf("a小于b");
}
当让if的语句也可以同时几个if使用,此时不再是非此即彼的关系,简单的说就是,当if和else连着使用的时候,条件语句只会打印一个,但是如下的情况的时候,打印就不是只打印一个,而是把所有符合条件的语句都打印
#include<stdio.h>
int main()
{
int i = 0;
int j = 0'
scanf("%d%d",&i,&j);
if(a>b)//如果a大于b,则进行下面的程序运行
{
printf("a大于b");//如果a大于b,则打印a大于b
}
if(a <= b)//如果a小于等于b
{
printf("a小于等于b");
}
if(a==b)//如果a等于b
{
printf("a等于b");
}
此时如果输入的数值 是9 9 两个一样的数值,那么此时会打印
a小于等于b
a等于b
return 0;
}
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
while
关于while的循环语句就比较简单,需要注意的是while的循环语句是循环的,既然是循环的,那就需要有个条件让循环停下来。那就是break;
语法格式
1
while(表达式)
语句;//如果循环体想包含更多的语句,可以加上大括号
2
while()
printf();
break;//停止循环,但是此处如果给while,加上break;那就没有循环语句了
3
//这里采取一个嵌套的,不管输入两个数字哪个大,最后都是a大
#include<stdio.h>
int main()
{
int a=0;
int b=0;
while(scanf(“%d%d”,&a,&b)!=EOF)//表明语句可以循环输入
if(a>b)
{
printf(“此时a比较大”);
}
else//如果a不大于b此时进入循环
{
while(a<b)
{
if(a<=b)//如果a小于b
{
a++;//每次循环a加上1
}
else(a>b)//直到循环到a大于b
{
printf(“此时a比较大”);
break;//此时的break用法是跳出循环语句,并且是先打印出a比较大 再跳出循环。
}
}
//所以这个循环语句里面 不管输入的是什么 反正就是啊肯定会比较大
return 0;
}
思维逻辑
需要注意的是while一般的使用场景会比较大一点,因为while的使用场景更加灵活
while 循环可能会导致无限循环,如果条件 condition 永远为真,循环体将永远执行。为了避免这种情况,需要确保循环体中包含了能够最终使条件变为假的操作
或者可以跳出循环语句的break 这个就是只要满足条件直接跳出循环语句
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
do-while
这个语句需要注意的是,在do-while语句里面,和其他语句都不同的是,do-while语句会先循环一次,再进行打印。而其他语句一般是先执行再循环,do-while一般不管三七二十一,先来一遍循环
举例
do
语句;
while(表达式):
逻辑
int main()
{
int i = 1;
do //直接进入循环
{
printf("%d",i); //里面是循环一次打印一次
i++; //打印完就加上1
} while (i<=10); //循环次数小于等于10次
return 0;
}
值得注意的是
相对于for循环和while循环,do-while循环的使用次数确实较少。这主要是因为do-while循环的特点是“后测试”,即先执行一次循环体,然后再判断循环条件是否满足。而for循环和while循环都是“先测试”,即在每次循环之前判断循环条件是否满足。因此,在大多数情况下,for循环和while循环更能满足编程需求。
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
switch
语法格式
switch (expression)
{
case value1: statement2
case value2: statementdefault: statement
}
简单的解释就是
int main()
{
int num = 0;
scanf("%d"&num)
switch (num %3)//这里计算输入的数字除以三取模
{
case 0: //当整除的时候 打印余数0
printf("余数是0\n");
break; //跳出循环
case 1: //余数1 的时候打印余数是1
printf("余数是1\n");
break ; //跳出循环
case 2; //余数2 的时候打印余数是2
printf("余数是2\n");
break; //跳出循环
}
return 0;
}
当然也有特殊情况
default; //当以上情况都不满足的时候
int main()
{
int num = 0;
scanf("%d"&num)
switch (num %3)//这里计算输入的数字除以三取模
{
case 0: //当整除的时候 打印余数0
printf("余数是0\n");
break; //跳出循环
case 1: //余数1 的时候打印余数是1
printf("余数是1\n");
break ; //跳出循环
default; //当以上情况都不满足的时候 这里等同于余数2 的时候打印余数是2
printf("余数是2\n");
break; //跳出循环
}
return 0;
}
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
for
表达式1 ⽤于循环变量的初始化
表达式2 ⽤于循环结束条件的判断
表达式3 ⽤于循环变量的调整
语法格式
for(表达式1;表达式2;表达式3
语句;//如果循环体包含更多的语句,可以加上大括号
逻辑
简单的说就是
#include<stdio.h>
int main()
{
int i = 0;
int sum = 0;
for (i = 1; i <= 100; i++) //进入一个for循环,i的开始是1,循环的次数100次,每次循环结束加一
{
if(i%3 == 0)
{
sum = sum + i; //求的是1-100 三的倍数相加的数字
printf("%d\n",sum);
}
return 0:
}