慕课学习C笔记01-第1~4章数据类型、运算符和程序结构语句

本文深入探讨了C语言的基础知识,包括数据类型、运算符、程序结构语句等核心概念。详细解释了整型、短整型、长整型的区别以及在不同编译环境下的取值范围。强调了字符串存储在字符数组中的特性,并阐述了字节大小转换的自动性和强制转换规则。同时,提供了switch语句的使用注意事项,包括常量表达式、break语句的正确使用等。此外,通过实例展示了如何使用switch语句计算前几月的总天数,以及break和continue语句的区别。

慕课学习C,http://www.imooc.com/learn/249

摘录上面的学习资料,第1~4章数据类型、运算符和程序结构语句

注意:在定义中不允许连续赋值,如int a=b=c=5;是不合法的。

注:int、short int、long int是根据编译环境的不同,所取范围不同。而其中short int和long int至少是表中所写范围,但是int在表中是以16位编译环境写的取值范围。另外 c语言int的取值范围在于他占用的字节数 ,不同的编译器,规定是不一样。ANSI标准定义int是占2个字节,TC是按ANSI标准的,它的int是占2个字节的。但是在VC里,一个int是占4个字节的。

注:C语言中不存在字符串变量,字符串只能存在字符数组中

注:字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换

在使用强制转换时应注意以下问题:

1、数据类型和表达式都必须加括号,如把(int)(x/2+y)写成(int)x/2+y则成了把x转换成int型之后再除2再与y相加了。

2、转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换

3、强制转换后的运算结果不遵循四舍五入原则

注意:使用do-while结构语句时,while括号后必须有分号。

break语句与continue语句的区别是:break是跳出当前整个循环,continue结束本次循环开始下一次循环。

在使用switch语句时还应注意以下几点:

1、在case后的各常量表达式的值不能相同,否则会出现错误。

2、在case子句后如果没有break;会一直往后执行一直到遇到break;才会跳出switch语句。

3、switch后面的表达式语句只能是整型或者字符类型

4、在case后,允许有多个语句,可以不用{}括起来。

5、各case和default子句的先后顺序可以变动,而不会影响程序执行结果。

6、default子句可以省略不用。

不用break的switch,会一直往后执行一直到遇到break或是结尾才跳出switch语句;求前几月的总天数: (先假设是平年)

    switch(month-1){
        case 11: days += 31;
        case 10: days += 31;
        case 9:  days += 31;
        case 8:  days += 30;
        case 7:  days += 31;
        case 6:  days += 30;
        case 5:  days += 31;
        case 4:  days += 30;
        case 3:  days += 31;
        case 2:  days += 28;
        case 1:  days += 31;
        case 0:  days +=  0;
    }

使当前函数中断,可以使用goto或break;break不仅能用在循环体内,还可以用在switch语句里;continue只能用在循环体内。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值