分支结构与循环结构
一、分支结构
分支结构是指有许多分支,多种路线的结构,又称选择结构。一般分支结构有if语句和switch语句。
- if语句的格式:
int main()
{
if("表达式")//表达式要为真,才能执行语句
{
;//语句
}
}
2.else语句
else语句与IF语句连用。
3.嵌套if
嵌套if格式:
if()
语句
else if()//else if可多个
语句
else
实例:
#include<stdio.h>
int main()
{
int a = 0;
scanf("%d", &a);//用嵌套if判断a是什么数
if (a > 0)
printf("正数");
else if (a < 0)
printf("负数");
else
printf("0");
return 0;
}
注意:if和else搭配是总是遵循就近原则。
实例:
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if(a == 1)
if(b == 2)
printf("hehe\n");
else
printf("haha\n");
return 0;
}
即使第一个if与else对齐,但是仍与第二if对应,这就是就近原则。
4.switch语句
switch也是分支语句的一种。其格式是:
switch(表达式)//表达式只能为整型!!!
{case 1: //case与1的中间要包含空格
case 2:
....
default:
}
括号中的表达式对应几就走那条case,如果没有对应的case语句就走default语句,switch要与break巧妙结合,。
扩展:1.break:结束循环,可以跳出循环。
2.continue:跳过本次循环,continue后的代码,去判断部分。
实例:输入一个1-7的数,打印对应的星期
#include<stdio.h>
int main()
{//输入一个数,打印对应的星期几
int day = 0;
scanf("%d", &day);
switch(day)
{ case 1:
printf("星期一"); break;
case 2:
printf("星期二"); break;
case 3:
printf("星期三"); break;
case 4:
printf("星期四"); break;
case 5:
printf("星期五"); break;
case 6 :
printf("星期六"); break;
case 7:
printf("星期日"); break;
default :
printf("输⼊错误\n");break;
}
return 0;
}
注意:default的顺序没有特殊要求,但是最好的放在最后,为了美观。
二、循环语句
1.While循环
while循环的格式:
while(表达式)//表达式为真,进入循环
{
语句
}
实例:在屏幕上打印1-10的值
#include<stdio.h>
int main()
{
int i = 1;
while (i <=10)
{
printf("%d ", i);
i++;
}
return 0;
}
2.for循环
for循环的格式:
for(格式化;判断;循环变量的调整)
{
语句;
}
实例:在屏幕上打印1-10
#include <stdio.h>
int main()
{
int i = 0;
for(i=1; i<=10; i++)
{
printf("%d ", i);
}
return 0;
}
3.do while循环语句
do while语句,是先做在循环,其格式:
do{
语句;
}
while(表达式)//判断
实例:在屏幕上打印1-10
#incude<stido.h>
int main()
{//用do while 实现在屏幕上打印1-10
int i = 1;
do
{
printf("%d ", i);
i++;
} while (i <= 10);//别忘记 分号(;)
return 0;
}