C :使用重复平方而不使用递归函数的 x 次方 [关闭]

2024-03-08

这是我的代码,它计算 2 的 16 次方

#include<stdio.h>
#include<math.h>

int main()
{
    int i;
    long int x=2;
    int n=16;
    int k=log(n)/log(2);
    for(i=1;i<=k;i++)
    {
        x=x*x;
    }
    printf("%d",x);
    printf("\n%d",k);
}

我想在 x 的幂(即 n 不是 2 的幂)时计算此值。说 n=19,n=43 等等


我怀疑你正在寻找通过平方求幂 http://en.wikipedia.org/wiki/Exponentiation_by_squaring是这样的:

unsigned int intpow(unsigned int base, unsigned int exponent)
{
    unsigned int result = 1;
    while (exponent > 0)
    {
        while ((exponent & 1) == 0)
        {
            exponent /= 2;
            base *= base;
        }
        exponent--;
        result *= base;
    }
    return result;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C :使用重复平方而不使用递归函数的 x 次方 [关闭] 的相关文章

随机推荐

  • 柯里化有什么好处?

    我认为我不太理解柯里化 因为我看不到它可以提供任何巨大的好处 也许有人可以用一个例子来启发我 证明它为什么如此有用 它真的有好处和应用吗 还是只是一个被过度重视的概念 两者之间有细微差别currying and 部分应用 尽管它们密切相关
  • BigQuery 分区表在 _PARTITIONTIME 上联接

    有两个分区表 都带有伪列 PARTITIONTIME 我想在 PARTITIONTIME 上加入它们 然后我想使用 PARTITIONTIME 过滤器查询结果表 但我注意到该过滤器仅传播到 JOIN 语句的第一个表 下面是一个例子 WITH
  • 如何在 Sublime Text 2 中解析来自 TypeScript 的错误消息?

    我正在尝试为 TypeScript 设置 Sublime Text 2 构建系统 我已按照我找到的指示进行操作here https stackoverflow com questions 12779631 how to configure
  • 问题 如何使 C# 的 VS IDE 设计器失效/刷新?

    I have 定制表格继承自Form它实现了一个名为的布尔属性Prop 我将使用的表单将继承自定制表格 此属性将对表单进行一些绘制和更改 如果已启用 但是 这并没有按预期工作 设计的 VS IDE 没有刷新以显示更改 但是 如果我按 Ctr
  • 使用 boost::asio::ip::tcp::iostream 的低带宽性能

    我写了一个小测试程序 使用boost asio ip tcp iostream传输约 38 MiB 的数据 include
  • C++ 标准是否强制要求对 wchar_t 进行编码?

    以下是我的 2014 年标准草案 N4140 副本的一些摘录 22 5 标准代码转换方面 locale stdcvt 3 对于三个代码转换方面中的每一个codecvt utf8 codecvt utf16 and codecvt utf8
  • NestedScrollView 下方的 TextView 高度为 wrap_content 不可见

    下面是底页的布局文件 我有一个TextView在嵌套滚动视图下方 当内容较大时 TextView以下NestedScrollView不可见 如果 NestedScrollView 的内容很小 它是可见的 我不明白是什么原因造成的 这是我的布
  • 套接字编程中的客户端到客户端消息传递

    我正在开发一个项目 该项目是基于 C 中的 WinSock 的服务器客户端应用程序 我已经完成了服务器和客户端之间通信所需的任何操作 我能够在它们之间发送和接收消息 现在我需要知道如何完成客户端到客户端消息传递部分以及必须如何完成工作 我只
  • 如何获取图片资源名称

    如何获取动态设置的imageview资源名称 这是图像适配器代码 public class ImageAdapter extends BaseAdapter private Context mContext public ImageAdap
  • 当构造函数采用字符串数组作为参数时,使用反射创建对象实例

    我正在尝试创建一个仅具有以下构造函数的类的实例 覆盖默认构造函数 public HelloWorld String args 我正在做以下事情 Class reflect HelloWorld obj null some logic to
  • Nodejs 错误: module.js:340 抛出错误;

    我尝试运行示例服务器 但在 Windows 上收到错误消息 然后我尝试在我朋友的机器上运行它 但运行得很顺利 windows系统也是如此 我不知道发生了什么事 让我展示一下源代码和错误消息 源代码 var http require http
  • 在 catch 上下文之外重新抛出异常时如何保留堆栈跟踪?

    TL DR 稍后如何引发先前捕获的异常 同时保留原始异常的堆栈跟踪 因为我认为这对Resultmonad 或计算表达式 尤其是 由于该模式通常用于包装异常而不抛出异常 因此下面是一个已解决的示例 type Result lt TResult
  • Yii2 REST 查询

    嘿 我有一个 ProductController 它扩展了 yii rest ActiveController 问题是我如何通过 HTTP GET 请求进行查询 Like http api test loc v1 products sear
  • android ndk:-fPIC 和 -pie 是互斥的吗?

    我正在使用 Android r10e NDK 为 Android 构建 Unison 文件同步可执行文件 但这并不是真正的 Android 问题 Android gt 5 0 SDK 21 要求可执行文件与位置无关 所以我 编译时将 pie
  • 删除 php 扩展名,停止访问带有 .php 扩展名的 url 并删除尾部斜杠

    我希望我的网址没有扩展名 因此没有 php 扩展名 我也希望没有机会访问带有尾部斜杠的网址 如果您尝试使用 php 访问它 以下内容将删除 php 扩展 然后重定向到无扩展的 url 我开始编写一条规则来阻止您使用 和重定向进行访问 但它不
  • 如何使用 Windows Phone 7 应用程序项目中的文件填充列表框

    我想在我的 wp7 应用程序中使用一个列表框 在其中显示特定目录中存在的所有文件的名称 我已添加包含项目本身中所有文件的文件夹 我想填充该文件夹中的所有文件名 我怎样才能访问它 我用它来绑定列表 string files Directory
  • 在 .NET 对象上设置 Enum 属性

    从这个问题继续 在 NET 对象上设置 可为空 属性 https stackoverflow com questions 61334031 setting a nullable property on a net object 感谢奥利维尔
  • 更新分布式 MS Project global.mpt 文件中的 VBA 代码模块

    我负责修改MS Project的Global文件 它包含一个不断更新的定制模块 我将其分发给不具备计算机技能来更新自己的文件的其他用户 我知道这只是复制粘贴 我想知道是否有一种方法可以在全局文件中编写一些内容来检查共享驱动器上存储的最新版本
  • RStudio 在 Web 浏览器中打开文档

    当我在 RStudio 的帮助框中输入函数名称时 我得到的答案是在 Web 浏览器而不是 RStudio 帮助窗口中打开的 输入时也会发生同样的情况 function例如 which 这样做时 我还在控制台中收到以下错误 gt which
  • C :使用重复平方而不使用递归函数的 x 次方 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 这是我的代码 它计算 2 的 16 次方 include