C语言复习巩固(三)

这篇博客详细介绍了C语言中的分支语句和循环语句,包括if语句的三种形式、关系和逻辑操作符的使用、else的匹配规则、switch语句的注意事项以及while、do...while和for循环的用法,强调了代码规范和避免死循环的重要性。
摘要由CSDN通过智能技术生成

目录

分支和循环语句

 

顺序结构

分支语句(选择结构)

if语句

if语句建议以以下两种方式书写:

 表达式内的关系操作符与逻辑操作符:

 else:

switch语句:

 循环语句:

while语句:

while语句中的break与continue:

 do...while语句

 for语句:

答案:


分支和循环语句

 


 

顺序结构

 

分支语句(选择结构)

 

if语句

语法结构:

1.if(表达式)

        语句;

2.if(表达式)

        语句1;

   else

         语句2;

3.if(表达式)

        语句1;

   else if(表达式)

        语句2;

   else 

        语句3;

    *表达式结果为非0(真)则执行语句

     {  }代表代码块

 

if语句建议以以下两种方式书写:
 

if(5 == a ){//这么写if结构更加清晰明了
   ...;     //变量放在右侧可以避免少写=
}
else{
   ...;
}



注意:“==”与“=”的区别

 表达式内的关系操作符与逻辑操作符:

示例:

 18 <= age <= 30的程序中判断过程是:

 18 <= age (40) 为真   所以左边部分变为1   

  1 <= 30   为真   值为 1

所以if内的语句可以被执行

正确写法:

 else:

 else 与相邻最近的if匹配(就近)

 

else会与第二个if匹配而不是第一个

 正确的写代码规范十分重要,如下这样写就不会有问题:

 当然也是可以简化的:

switch语句:

 switch(整型常量表达式){   

          case 1:

                       ........;

                       break;

          case 2:

                       ........;

                       break;

           case 3:

                       ........;

                       break;

               ...             

            case n:

                       ........;

                       break;

            default:

                     ........;

                       break;

}

1.switch中必须为整型的常量表达式

2.break语句建议在每个case后加上,避免以后修改时忘记添加

3.default只能出现一次

思考:

#include <stdio.h>
int main() {
	int n = 1;
	int m = 2; 
	switch (n) {
	case 1:
		m++;
	case 2:
		n++;
	case 3:
		switch (n) {//switch允许嵌套使用            
		case 1:
			n++;
		case 2:
			m++;
			n++;
			break;
		}
	case 4:
		m++;
		break;
	default:
		break;
	}
	printf("m = %d, n = %d\n", m, n);
	return 0; 
}

 循环语句:

while语句:

while(表达式){

           循环语句;

}

while语句中的break与continue:

以下给出三个示例

 示例1:

示例2:

程序没有结束,这是一个死循环

示例3:


 do...while语句

do{

       循环语句;

}while(表达式);//分号不要忘记


 

 for语句:

for(   初始化部分;条件判断部分;调整部分 ){

            循环语句;

}

1. 不可在for 循环体内修改循环变量,防止 for 循环失去控制。

2. 建议for语句的循环控制变量的取值采用“前闭后开区间”写法。
 

1. 请问下面的代码中循环体执行几次?

#include <stdio.h> 
int main() {    
    int i = 0;    
    int k = 0;    
    for(i =0,k=0; k=0; i++,k++)        
        k++;    
    return 0; 
}

2.下面的代码会输出什么?

#include<stdio.h>
int main(){
    int i = 0;
    int j = 0;
    for(; i < 10; i++)
        for(; j < 10; j++)
            printf("%d    ",j);
    return 0;
}

代码应该书写规范: 

#include<stdio.h>
int main(){
    int i = 0;
    int j = 0;
    for(i = 0; i < 10; i++)
        for(j = 0; j < 10; j++)
            printf("%d    ",j);
    return 0;
}

 

答案:

m=5,n=3

0 1 2  3 4 5 6 7 8 9(因为在第一次大循环中j已经变为10 后面的大循环中第二个循环是没有输出的)

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值