4.5笔记(分支循环语句)

语句: c语言中由一个隔开的就是一个语句。
分支语句:

  1. if语句
    语法结构:
    if(表达式)
        语句;
     
    if(表达式)
        语句1;
    else
        语句2;
     
    if(表达式1)
        语句1;
    else if(表达式2)
        语句2;
    else
        语句3;

有时候存在悬空else的情况,即else会与最近的if匹配。

int main()
{
    
    
	int a = 0;
	int b = 2;
	if (1 == a)
		if (2 == b)
			printf("hello world\n");
	else
		printf("hello hello\n");
	return 0;
}

这样就会出现错误。所以我们一般使用{} 就可以避免这样的错误,也可以使代码更清楚。
 

  1. switch语句
    语法结构:
    switch:
    {
        case 整形常量表达式:
                 语句;
    default:(若全无成立,执行这个),一般加上
    }

这里面的整形表达式是:int,short,char,long,long long类型。

case有判定,但无分支,必须加上break。这块的意思就是,switch语句会执行满足case成立条件以及之后的所有条件。
例:

int main()
{
    
    
	int i = 0;
	scanf("%d", &i);
	switch (i)
	{
    
    
	case 1:
		prinft("今天星期一\n");
	case 2:
		prinft("今天星期一\n");
	case 2:
		prinft("今天星期一\n");
	case 4:
		prinft("今天星期一\n");
	case 5:
		prinft("今天星期一\n");
	case 6:
		prinft("今天星期一\n");
	case 7:
		prinft("今天星期一\n");
	}
	return 0;
}

结果为:
在这里插入图片描述
每个case语句加上break之后,结果为:
在这里插入图片描述
一般将default加在case语句的最后面,这样在所有条件不满足的时候,可以进行报错。
多个条件的结果为同一个结果时,可将前面的省略,输出后面的一个。
 

例如:

int main()
{
    
    
	int i = 0;
	scanf("%d", &i);
	switch (i)
	{
    
    
	case 1:
	case 2:
	case 3:
	case 4:
	case 5:
		printf("周间\n");
		break;
	case 6:
	case 7:
		printf("周末\n");
		break;
	default:
		printf("输入错误\n");
		break;
	}
	return 0;
}

循环语句:

  1. while循环
    语法结构:
    while(表达式)
         循环语句;

while循环中,break的作用为:只要遇到break,就停止后面的所有循环。
                       continue的作用为:遇到continue,终止本次循环。

  1. for循环:
    语法结构:
    for(表达式1;表达式2;表达式3)
          循环语句;

表达式1为:初始化部分。
表达式2为:条件判断部分。
表示式3为:调整部分。
一般for语句对循环控制变量的取值采用“前闭后开”写法。
例如:

for(i=0;i<10;i++

for循环中,break和continue的作用和在while循环中一样。
 
 
for循环的变种:

int main()
{
    
    
	//第一种  死循环
	for (;;)
	{
    
    
		printf("呵呵\n");
	}
	//第二种
	int x, y;
	for (x = 0, y = 0; x < 2 && y < 5; x++, y++)
	{
    
    
		printf("哈哈\n");
	}
	return 0;
}

for循环和while循环的比较:两者循环的三个条件都存在,但while循环不利于查找修改,for循环风格更好一点。

  1. do…while()循环
    语法结构:
    do
        循环语句;
    while(表达式);

语句特点:循环至少执行一次。
do…while循环中的break和continue作用和while循环中一样。
 
 
 
 
getchar(),putchar():从键盘获取,输出,定义为int。
EOF(宏,定义为-1)
 
 
 
 

 改变字体颜色:<font color=> 
 改变字体颜色:<font size=> 
 输入多个空格:&nbsp;    或者   &#160; (;为小写)

猜你喜欢

转载自blog.csdn.net/w903414/article/details/105328393