不使用*运算符进行乘法

没有更多问题

我正在尝试将两个数字相乘并且不应使用*运算符的代码。我写了这段代码,但没有给出预期的解决方案。

#include<stdio.h>
#include<stdlib.h>

int main(int ar,char *arg[])
{
   long int a;
   long int b;

   sscanf(arg[1],"%ld",&a);
   sscanf(arg[2],"%ld",&b);

   long int count=0;
   long int temp=b;
   long int prod=0;

   while(temp>0)
   {
       count=0;

       while(temp/2>0)
       {
          temp/=2;
          count++;
       }

       prod+=a<<(count);
       temp=b-(1<<count);
   }

   //printf("%ld %d\n",count,1<<count);
   printf("%ld\n",prod);
   return 0;
}

谁能解释一下代码中的错误吗?

Vinayawsm

以这种方式编辑while循环。

while(temp>0)
{
    count=0;
    while(temp/2>0)
    {
        temp/=2;
        count++;
    }
    prod+=a<<(count);
    temp=b-(1<<count);
    b=temp  //<--
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

不使用模板即可重载乘法运算符

来自分类Dev

不使用模板即可重载乘法运算符

来自分类Dev

乘法运算符

来自分类Dev

当使用@ infix运算符进行矩阵乘法时,Sphinx不会渲染语法高亮

来自分类Dev

不使用/或*运算符的整数除法

来自分类Dev

不使用算术运算符的除法

来自分类Dev

%运算符不使用整数变量

来自分类Dev

乘法运算符重载

来自分类Dev

如何在不使用乘法运算符的情况下使两个正数相乘的递归函数

来自分类Dev

按值的赋值运算符不使用显式副本构造函数进行编译

来自分类Dev

使用Java的不带*运算符的十进制乘法

来自分类Dev

使用or运算符(||)进行Javascript递归

来自分类Dev

领域:使用IN运算符进行过滤

来自分类Dev

使用 OR 运算符进行布尔赋值

来自分类Dev

通过与Select链接使用聚合运算符与不使用聚合运算符之间的区别

来自分类Dev

为什么“ as”运算符在C#中不使用隐式转换运算符?

来自分类Dev

在选择运算符的条件下不使用合取

来自分类Dev

不使用模数运算符的FInd模数

来自分类Dev

在Eclipse中不使用Perl运算符`...

来自分类Dev

不使用 OR 运算符返回 True 或 False

来自分类Dev

使用#include将对象与其自身进行比较时不使用自定义==运算符?

来自分类Dev

使用>>运算符

来自分类Dev

使用python的**运算符和*运算符时进行签名

来自分类Dev

使用python的**运算符和*运算符时进行签名

来自分类Dev

使用算术运算符与比较运算符对数字数组进行排序

来自分类Dev

使用std :: swap而不是使用'='运算符进行赋值

来自分类Dev

使用mongodb $ in运算符使用数组数组进行搜索

来自分类Dev

使用Criteria API使用AND运算符进行左联接

来自分类Dev

在不使用逻辑运算符,关系运算符或选择结构的情况下确定菜单选项

Related 相关文章

  1. 1

    不使用模板即可重载乘法运算符

  2. 2

    不使用模板即可重载乘法运算符

  3. 3

    乘法运算符

  4. 4

    当使用@ infix运算符进行矩阵乘法时,Sphinx不会渲染语法高亮

  5. 5

    不使用/或*运算符的整数除法

  6. 6

    不使用算术运算符的除法

  7. 7

    %运算符不使用整数变量

  8. 8

    乘法运算符重载

  9. 9

    如何在不使用乘法运算符的情况下使两个正数相乘的递归函数

  10. 10

    按值的赋值运算符不使用显式副本构造函数进行编译

  11. 11

    使用Java的不带*运算符的十进制乘法

  12. 12

    使用or运算符(||)进行Javascript递归

  13. 13

    领域:使用IN运算符进行过滤

  14. 14

    使用 OR 运算符进行布尔赋值

  15. 15

    通过与Select链接使用聚合运算符与不使用聚合运算符之间的区别

  16. 16

    为什么“ as”运算符在C#中不使用隐式转换运算符?

  17. 17

    在选择运算符的条件下不使用合取

  18. 18

    不使用模数运算符的FInd模数

  19. 19

    在Eclipse中不使用Perl运算符`...

  20. 20

    不使用 OR 运算符返回 True 或 False

  21. 21

    使用#include将对象与其自身进行比较时不使用自定义==运算符?

  22. 22

    使用>>运算符

  23. 23

    使用python的**运算符和*运算符时进行签名

  24. 24

    使用python的**运算符和*运算符时进行签名

  25. 25

    使用算术运算符与比较运算符对数字数组进行排序

  26. 26

    使用std :: swap而不是使用'='运算符进行赋值

  27. 27

    使用mongodb $ in运算符使用数组数组进行搜索

  28. 28

    使用Criteria API使用AND运算符进行左联接

  29. 29

    在不使用逻辑运算符,关系运算符或选择结构的情况下确定菜单选项

热门标签

归档