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

wordpress同步公众号网站推广优化网址

wordpress同步公众号,网站推广优化网址,营销网络是什么意思,有网站源码怎么做网站文章目录 题目函数接口定义裁判测试程序样例输入样例输出样例 题解解题思路完整代码AC代码 编程练习题目集目录 题目 要求实现一个打印非负整数阶乘的函数。 函数接口定义 void Print_Factorial ( const int N ); 其中N是用户传入的参数,其值不超过 1000 1000 10…

文章目录

  • 题目
    • 函数接口定义
    • 裁判测试程序样例
    • 输入样例
    • 输出样例
  • 题解
    • 解题思路
    • 完整代码
    • AC代码

编程练习题目集目录

题目

  要求实现一个打印非负整数阶乘的函数。

函数接口定义

void Print_Factorial ( const int N );

  其中N是用户传入的参数,其值不超过 1000 1000 1000。如果 N N N 是非负整数,则该函数必须在一行中打印出 N ! N! N! 的值,否则打印 “ I n v a l i d i n p u t ” “Invalid input” Invalidinput

裁判测试程序样例

#include <stdio.h>
void Print_Factorial(const int N);
int main()
{int N;scanf("%d", &N);Print_Factorial(N);return 0;
}
/* 你的代码将被嵌在这里 */

输入样例

15

输出样例

1307674368000

题解

解题思路

  首先判断传入函数的数字是否小于 0 0 0,如果小于 0 0 0,则输出 “ I n v a l i d i n p u t ” “Invalid input” Invalidinput;如果是 0 0 0 或者 1 1 1 则直接输出 1 1 1 即可;如果在 2 − 12 2-12 212 之间则可以直接相乘,输出即可;如果大于 12 12 12 则变量无法保存数据,需要使用数组来保存,将结果以数组形式输出即可。

完整代码

#include <stdio.h>void Print_Factorial ( const int N );int main()
{int N;scanf("%d", &N);Print_Factorial(N);return 0;
}/* 你的代码将被嵌在这里 */
void Print_Factorial(const int N)
{if (N < 0){printf("Invalid input\n");}else if (N < 2)             // 0和1的阶层为1{printf("1\n");}else if (N > 1 && N < 13)   // 12及之前都可以用long int型表达{int i = 2;long int sum = 1;for (i; i <= N; i++){sum *= i;}printf("%ld\n", sum);}else{int Num[3000] = { 0 };  // 确保保存最终运算结果的数组足够大:1-9相乘最多有9位,10-99相乘最多有2*90=180位,100-999相乘最多有3*900=2700位,1000是4*1=4位,总计2893,最好数组取大一下int i, j, k, n;k = 1;                  // 位数n = 0;                  // 进位Num[0] = 1;             // 将结果先初始化为1int temp;               // 阶乘的任一元素与临时结果的某位的乘积结果for (i = 2; i <= N; i++){for (j = 0; j < k; j++){temp = Num[j] * i + n;      // 相应阶乘中的一项与当前所得临时结果的某位相乘(加上进位)Num[j] = temp % 10;         // 更新临时结果的位上信息n = temp / 10;              // 看是否有进位}while (n)                       // 如果有进位{Num[k] = n % 10;            // 新加一位,添加信息。位数增1k++;n = n / 10;                 // 看还能不能进位}}for (i = k - 1; i >= 0; i--){printf("%d", Num[i]);}printf("\n");}
}

AC代码

void Print_Factorial(const int N)
{if (N < 0){printf("Invalid input\n");}else if (N < 2)             // 0和1的阶层为1{printf("1\n");}else if (N > 1 && N < 13)   // 12及之前都可以用long int型表达{int i = 2;long int sum = 1;for (i; i <= N; i++){sum *= i;}printf("%ld\n", sum);}else{int Num[3000] = { 0 };  // 确保保存最终运算结果的数组足够大:1-9相乘最多有9位,10-99相乘最多有2*90=180位,100-999相乘最多有3*900=2700位,1000是4*1=4位,总计2893,最好数组取大一下int i, j, k, n;k = 1;                  // 位数n = 0;                  // 进位Num[0] = 1;             // 将结果先初始化为1int temp;               // 阶乘的任一元素与临时结果的某位的乘积结果for (i = 2; i <= N; i++){for (j = 0; j < k; j++){temp = Num[j] * i + n;      // 相应阶乘中的一项与当前所得临时结果的某位相乘(加上进位)Num[j] = temp % 10;         // 更新临时结果的位上信息n = temp / 10;              // 看是否有进位}while (n)                       // 如果有进位{Num[k] = n % 10;            // 新加一位,添加信息。位数增1k++;n = n / 10;                 // 看还能不能进位}}for (i = k - 1; i >= 0; i--){printf("%d", Num[i]);}printf("\n");}
}
http://www.tj-hxxt.cn/news/106817.html

相关文章:

  • 提供网站建设搭建微信朋友圈广告怎么推广
  • 男女做暖暖的试看网站漫画珠海seo快速排名
  • 什么网站做兼职靠谱吗最好的推广平台是什么软件
  • 如何做企业网站方法谷歌seo服务
  • 上海网站建设 浦东运营推广怎么做
  • 什么信息发布型网站成都seo网站qq
  • 太原高端网站建设网络推广引流有哪些渠道
  • 苏州网站建设seo12345浏览器
  • wordpress怎么调用api电商运营seo
  • 开发一套网站多少钱沈阳头条今日头条新闻最新消息
  • 网站页尾的作用seo外链发布技巧
  • 如何给网站做app企业关键词优化推荐
  • 建设外围彩票网站seo排名查询工具
  • 做企业网站设计价格是多少网络销售话术900句
  • WordPress 聊天小工具慧达seo免登录发布
  • 浙江新华建设有限公司网站在线注册网站
  • 自己做视频网站如何接广告去哪里找需要推广的app
  • 网站维护多久能好论坛推广技巧
  • 如何做国外网站彩票的推广今日大新闻
  • 郑州哪些公司做网站比较好网站营销方案
  • 网站空间商怎么做百度招聘平台
  • 济南金融行业网站开发免费推广网站排名
  • 在家帮别人做网站赚钱吗徐州seo排名公司
  • 做食品网站需要什么条件品牌策划方案
  • 俄语网站设计培训网站搭建
  • 东莞建网站的公司网络优化工作应该怎么做
  • 下载百度导航最新版本关键词优化公司网站
  • 网站开发实训意义百度com打开
  • 哪个网站生鲜配送做的好安卓aso优化工具
  • 怎么在年报网站做简易注销网站推广投放