当前位置: 首页 > news >正文

家具网站建设的前景分析小程序网站制作公司

家具网站建设的前景分析,小程序网站制作公司,建设门户网站申请,微网站购物网站文章目录 打印一个整数的每一位思考递归非递归 求阶乘递归非递归证明0的阶乘为1 写代码中遇到的VS输出窗口提示信息为什么VS平台32位和64位的long都是4字节#xff1f;%zu是什么格式说明符VS下_int128为什么用不了 打印一个整数的每一位 思考 负数和0都是整数#xff0c;我… 文章目录 打印一个整数的每一位思考递归非递归 求阶乘递归非递归证明0的阶乘为1 写代码中遇到的VS输出窗口提示信息为什么VS平台32位和64位的long都是4字节%zu是什么格式说明符VS下_int128为什么用不了 打印一个整数的每一位 思考 负数和0都是整数我们该如何处理输入的整数是负数和0的情况呢是在函数里面处理还是在主调函数中处理呢 递归 void printDigits(int n)//递归方式实现打印一个整数的每一位(主调函数处理0和负整数的情况) {if (n 0)return;//Base caseprintDigits(n / 10);//Recursive caseprintf(%d\n, n % 10);//Print the last digit }非递归 void print_digits(int n)//非递归方式实现打印一个整数的每一位(可以在函数中处理也可以在主调函数处理 {int length 0;//记录整数的总位数while (n 0){length;n / 10;}for (; length 0; length--){printf(%d\n, n % 10);} }求阶乘 递归 //实测VS下int和long能表示的最大阶乘是16!long long是25!_int64(打印的时候用格式化说明符%zu)是65_int128用不了 int Factorial(int n)//递归实现求n的阶乘不考虑溢出的问题 {if (n 0)return 0;//输入非法阶乘未定义负数if (n 0 || n 1)return 1;//Base caseelse return n * Factorial(n - 1);//Recursive case }非递归 int factorial(int n)//非递归实现求n的阶乘不考虑溢出的问题 {if (n 0)return 0;//输入非法阶乘未定义负数int result 1;while (n 1)result * n--;return result; }证明0的阶乘为1 证明0!等于1可以从数学的角度进行推导。一种常见的方法是通过归纳法。 归纳法证明0!等于1 基本情况 当n 0时我们需要证明0! 1这是基本情况。归纳假设 假设对于某个非负整数 kk! 等于1成立即假设归纳假设为真。归纳步骤 现在我们要证明(k 1)!等于1。根据阶乘的定义 (k 1)! (k 1)*k! 利用归纳假设我们知道k!等于1。代入这个结果 (k1)!(k1)*1k1 因此我们证明了当k为非负整数时(k1)!等于k1。 结合基本情况和归纳步骤我们得出结论对于所有非负整数n!等于1。这也包括了n0的情况因此0!等于1。 写代码中遇到的VS输出窗口提示信息 环境VS2022release 提示信息 Previous IPDB not found,fall back to full compilation All 8 functions were compiled because no usable IPDB/IOBJ from previous compilation was found “Previous IPDB not found, fall back to full compilation” 这个消息表明系统无法找到先前生成的增量程序数据库IPDB因此正在回退到完整的编译过程。 IPDB 是一个包含信息的文件通过存储先前编译的数据加速了编译过程。当找不到现有的 IPDB时编译器会回到完整的编译过程这可能需要更多时间。这个消息通常出现在开发环境中不一定表示错误。这更多是在构建过程中的信息性消息。如果在编译过程中遇到任何问题或错误你可能需要检查你的构建配置。这个 Visual Studio 输出窗口的信息表明所有8个函数都被重新编译因为在先前的编译中找不到可用的IPDBIncremental Program Database或 IOBJIntermediate Object。增量编译是一种优化它只重新编译发生更改的部分而不是整个程序。IPDB 文件包含了先前编译的信息可以帮助加速这个过程。IOBJ文件包含中间对象代码。在这种情况下由于找不到可用的 IPDB 或 IOBJ编译器不得不重新编译所有8个函数这可能导致编译时间较长。通常情况下这并不是一个错误而是一个提示告诉我们编译过程中的一些细节。如果希望加快编译速度可以检查项目设置确保启用了适当的编译优化和增量编译选项。此外确保先前的编译输出和中间文件没有被删除或移动以供下一次编译使用。 为什么VS平台32位和64位的long都是4字节 Visual Studio 编译器在 Windows 平台上无论是32位还是64位都将long类型定义为4字节。这是由于历史原因和与 Windows API 的兼容性考虑。 在 Windows API 中long类型通常被定义为4字节即使在64位系统上也是如此。这是为了确保32位和64位程序之间的二进制兼容性因为许多Windows API函数在参数和数据结构中使用了 long 类型。 %zu是什么格式说明符 %zu 是 C 语言中用于格式化输出的格式说明符之一。在 printf 函数中%zu 用于输出 size_t 类型的值。 %z 表示以大小为参数的长度修饰符。u 表示无符号整数。 size_t 是无符号整数类型通常用于表示内存块的大小、数组的索引等。使用 %zu 保证在不同平台上都能正确地输出 size_t 类型的值因为 size_t 的大小可能在不同系统上有所变化。 VS下_int128为什么用不了 在 C 和 C 中_int128 通常不是标准的整数类型。这可能导致在某些编译器或平台上无法直接使用 _int128。而在一些特定的编译器中如 GCC可以使用 __int128 来表示128位整数。 如果在使用 _int128 或 __int128 遇到问题可能是因为编译器不支持或不提供这个类型。在这种情况下可能需要考虑使用特定于你的编译器的扩展或其他库或者考虑使用更通用的库如 GMPGNU Multiple Precision Arithmetic Library它提供了对大整数操作的支持。 PS:使用非标准的扩展可能导致代码在不同的编译器或平台上不可移植。如果需要处理非常大的整数了解所使用编译器和平台的支持情况并选择合适的库或方案是很重要的。
http://www.zqtcl.cn/news/696763/

相关文章:

  • 地铁公司招聘信息网站网站推广页面 英语
  • 廊坊做网站的企业哪家好做网站app价格多少钱
  • wap网站制作当阳网站建设电话
  • 服装电子商务网站建设3000字中装建设有限公司
  • 河南卓越建设工程有限公司网站怎么做垂直门户网站
  • 接单做网页的网站手机端app开发公司
  • 古田路9号设计网站在线制作图片拼图
  • 深圳网站开发ucreator售后服务 网站建设
  • 做网站的语北京比较好的it公司
  • 长春建站模板制作php项目开发案例源码
  • 绍兴seo外包公司山东网站建设优化
  • php做网站知乎境外网站icp备案
  • 做seo网站图片怎么优化地坪漆东莞网站建设技术支持
  • wordpress theme forest济南优化网站排名
  • 简述网站的制作步骤合肥网站建设需
  • 网站备案的程序哪里能买精准客户电话
  • 白云网站建设网站版式
  • 做美食有哪些网站科技公司介绍
  • 网站后台被百度蜘蛛抓取哪个做网站比较好
  • 企业建设网站的需求分析百度免费发布信息平台
  • 网站建设交易中心上海装修公司排行榜
  • 桂林论坛网站有哪些在线设计平台用户分析
  • wap网站的开发去加网 wordpress
  • 博客网站建设设计论文总结php mysql做网站登录
  • 海南智能网站建设公司wordpress 如何使用php版本号
  • 河南网站开发培训app 软件开发
  • 购物网站功能介绍一流的高密网站建设
  • 电影网站怎么做优化wordpress 去掉w
  • 永久网站空间标书制作员工资很低吗
  • 做网站用到ps么淘宝优惠网站怎么做