21xrx.com
2024-09-20 05:43:03 Friday
登录
文章检索 我的文章 写文章
C语言中如何实现数值取反
2023-06-18 01:20:58 深夜i     --     --
C语言 数值取反 按位取反 减法运算 绝对值函数“~”运算符 abs函数

文章

当我们需要在C语言中将一个数值进行取反的时候,可以采用以下两种方式实现:

方式一:使用按位取反(bitwise not)运算符“~”

按位取反运算符“~”可以对一个整数值的二进制位进行取反操作,即将每一位0变为1、1变为0。具体实现如下:


int num = -5;

int opposite_num = ~num + 1; // 先按位取反,然后加1得到数值的相反数

printf("原数:%d,取反数:%d\n", num, opposite_num);

上述代码中,将变量“num”初始化为-5,使用按位取反运算符“~”对其进行取反操作,并使用加1的方式得到相反数。最后将原数和取反数分别打印输出。

方式二:使用减法运算和绝对值函数“abs()”

将一个数值取反的另一种方式是使用减法运算和绝对值函数“abs()”。具体实现如下:


int num = -5;

int opposite_num = -1 * abs(num);

printf("原数:%d,取反数:%d\n", num, opposite_num);

上述代码中,也是将变量“num”初始化为-5,然后使用减法运算符将其变号,并使用绝对值函数“abs()”获取其绝对值后与-1相乘得到相反数。最后同样将原数和取反数分别打印输出。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复