C语言中的函数、数学运算符、选择与循环控制结构

本文介绍了C语言中的函数、数学运算符及选择与循环控制结构。讲解了赋值、算术、位运算符的用法,并通过示例解释了左移和右移的效用。讨论了math.h头文件中的数学函数,如pow、sqrt等,以及如何正确求立方根。还探讨了if-else和switch语句的短路特性,并提出了分支预测以提高效率。最后,详述了while、do-while和for循环,以及函数和函数指针的使用。
摘要由CSDN通过智能技术生成

C语言入门与提升(2)—— C语言中的函数、数学运算符、选择与循环控制结构

前言:

C语言作为面向过程的语言,所以不涉及类与继承的概念,那么函数与分支控制结构就更加重要了。一些复杂的操作建议写到函数中,方便进行debug。

首先说明一下C语言中的运算符

= 赋值

+ - * / ()  加减乘除括号,满足基本的运算律

% 求余数

& | ^ ~ 位运算,分别表示 与  或  异或  非

<<  >> 左移和右移

这些运算符都很简单,但是有一些妙用可以提升我们的代码质量,比如说

将求余运算符用在奇偶判断中,也可以用于将随机数分类

位运算是对数据的按位进行运算,这里举个使用中的小例子:

while(scanf("%d",&a) != EOF)  和  while(~scanf("%d",&a))效果是一样的,前面一句之前已经讲过了,后边这句的话实际上是 while(~scanf("%d", &a) != 0), 而我们都知道,读取到末尾或者错误时返回值EOF,用二进制表示就是各位全都是1,那么按位取反之后不就是0了嘛!

针对左移和右移运算,我们可以考虑数据的二进制表示,每一位相当于2的n-1次方,那么全部都右移一位,是不是相当于除以2了呢?而且,如果是一个奇数右移一位之后,相当于(奇数 - 1)/ 2 ,自动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值