Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 按位运算符:使用位操作打印数字1到100_C_Algorithm_Bit Manipulation - Fatal编程技术网

C 按位运算符:使用位操作打印数字1到100

C 按位运算符:使用位操作打印数字1到100,c,algorithm,bit-manipulation,C,Algorithm,Bit Manipulation,我相信可以使用逐位操作或位操作来生成数字1到100,而不是使用传统的递增指令 有哪些可能的方法可以做到这一点?我相信有几种方法可以实现这一点。其中之一是使用运算符~x,它是位补码,等于-x+1 因此,使用上述函数增加值并打印它 除了我自己的答案外,我还找到了另一种方法 只要用1代替y,就可以用另一种方法增加值。你的问题没有意义。为什么要使用位运算符来打印从1到100的数字?没有任何意义?我不这么认为。@KlasLindbäck这没有实际用途。没有一个理智的人会使用位运算符来做这样简单的事情。这样

我相信可以使用逐位操作或位操作来生成数字1到100,而不是使用传统的递增指令


有哪些可能的方法可以做到这一点?

我相信有几种方法可以实现这一点。其中之一是使用运算符~x,它是位补码,等于-x+1

因此,使用上述函数增加值并打印它

除了我自己的答案外,我还找到了另一种方法


只要用1代替y,就可以用另一种方法增加值。

你的问题没有意义。为什么要使用位运算符来打印从1到100的数字?没有任何意义?我不这么认为。@KlasLindbäck这没有实际用途。没有一个理智的人会使用位运算符来做这样简单的事情。这样做的目的是查看用户是否了解位运算符及其作用。很可能这是一个面试问题。我认为这是一个有趣的问题。我相信这是可能的。。。然后给我你的密码。我可以说我相信有可能预测明天的彩票号码,并要求列出所有方法吗?我很乐意只做一个有效的。有些人可能会反对你为别人做显而易见的家庭作业them@MattMcNabb这是有道理的。“我没想过。”萨尔瓦多人耍了个大把戏。谢谢你,我学到了很多。
int increase(int x){
   return (-(~x));
}
int Add(int x, int y)
{
    if (y == 0)
        return x;
    else
        return Add( x ^ y, (x & y) << 1);
}