编程每日一题_C程序设计_整型数据阶乘计算

2023-11-13

描述:

计算整型数据阶乘。

1. 算子递增

算子递增,并定义循环控制变量

解法一:while循环
#include<stdio.h>

int main()
// 循环结构 while 实现阶乘计算 
{
	int n = 1 ;
	int i = 1 ;
	int product = 1 ;
	
	scanf("%d",&n);
	
	while(i<=n){
		product = product*i;
		i ++;
	}
	printf("循环执行次数为%d\n",i-1);
	printf("循环结束时i的值为%d\n",i);
	printf("n!的结果为%d\n",product);
	return 0; 
}
解法二:do {} while()循环结构
#include<stdio.h>

int main()
{
	int n = 1 ;
	int i = 1 ;
	int product = 1 ;
	
	scanf("%d",&n);
	
	do	{	
		product = product*i;
		i ++;
	}while(i<=n);
	printf("循环执行次数为%d\n",i-1);
	printf("循环结束时i的值为%d\n",i);
	printf("n!的结果为%d\n",product);
	return 0; 
}
解法三:for()循环结构
{
	int n = 1 ;
	int i;
	int product = 1 ;
	
	scanf("%d",&n);
	
	for(i=1;i<=n;i++)	{		//对于一开始的i=1,当i<=n时,重复做循环体,每一轮循环在做完循环体内语句后,使得i++
		product = product*i;
	}
	printf("循环执行次数为%d\n",i-1);
	printf("循环结束时i的值为%d\n",i);
	printf("n!的结果为%d\n",product);
	return 0; 
}
2.算子递减

算子递减,可不使用循环控制变量

解法:for循环结构

{
	int n = 1 ;
	int num=0 ;
	int product = 1 ;
	
	scanf("%d",&n);
	num = n;
	for(;n>=1;n--)	{
		product = product*n;
	}
	printf("循环执行次数为%d\n",num);
	printf("循环结束时n的值为%d\n",n);
	printf("n!的结果为%d\n",product);
	return 0; 
}
总结:循环选用技巧
  1. 当有固定循环次数时,用 for
  2. 若循环至少需要执行一次,用do{ }while()
  3. 其他情况,用while
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

编程每日一题_C程序设计_整型数据阶乘计算 的相关文章

随机推荐

  • 解决数据库连接时2059 - Authentication plugin 'caching_sha2_password' cannot be loaded报错

    问题如下 在Navicat里面连接数据库时直接就出现报错2059 Authentication plugin caching sha2 password cannot be loaded 从错误信息可知caching sha2 passwo
  • 隐藏手机下方的底部导航条NavigationBar

    需知 在现在的Android项目中 为了布局适配 也为了界面看起来更加简洁大气 App保留了头部标题栏 但是下方的NavigationBar却有点多余 不过当然 因为手机按键很少的缘故 若是没有NavigationBar的话 恐怕就连退出都
  • WF项目问题总结

    1 后台接口对接时 参数传递方式 urlcode 是一种编码方式 就是把http请求串的url 进行urlcode的编码 让httpserver 可以识别 不至于http的client server 之前出现乱码或者误解 例如 Conten
  • 【LeetCode每日一题】5. 最长回文子串

    题目 给你一个字符串 s 找到 s 中最长的回文子串 示例 1 输入 s babad 输出 bab 解释 aba 同样是符合题意的答案 示例 2 示例 2 输入 s cbbd 输出 bb 示例 3 输入 s a 输出 a 示例 4 输入 s
  • Python零基础学习

    大家好 我是王某人 一 写在前面 前几天在Python技术交流群有个小伙伴分享一个使用Python画出太极阴阳八卦图的代码 这里拿出来给大家分享下 一起学习下 不过这里他的代码是有点问题的 不过不慌 下面给出了解答 二 解决过程 下面给出了
  • SSL/TLS协议交互流程分析

    本文参考 SSL TLS协议运行机制的概述 tls运行机制 这里不细说 建议细看 HTTPS与TLS The Transport Layer Security TLS Protocol v1 2 ssl tls基础介绍 SSL Secure
  • 2021PMP冲刺题,敏捷题目摘录

    1 单选 在每日站会期间 开发人员提出了一个影响产品质量并需要解决方案的问题 项目经理应该做什么 During the daily stand up the developer raises a problem that affects p
  • JZ15 二进制中1的个数

    输入一个整数 n 输出该数32位二进制表示中1的个数 其中负数用补码表示 数据范围 2 31 lt n lt 2 31 1 231 lt n lt 231 1 即范围为 2147483648 lt n lt 2147483647 21474
  • 毕业设计记录-matlab自动生成并标注时频图数据集

    文章目录 2022 1 8日的记录 2022 1 8日的记录 陆陆续续几天 玩中带做终于是写好了一个基本的雏形 以后想往里面添加东西就好添了 首先是文件功能描述 caogao caogao 草稿 写程序调试代码的地方 CreateSigna
  • openssl使用错误"error: storage size of 'ctx' isn't known"

    前言 SSL是Secure Sockets Layer 安全套接层协议 的缩写 openssl是一套开源的库 以便使用者进行安全通信 避免窃听 识别身份 其中 ssl的HMAC是计算MAC的一种方法 有密钥参与计算 不采用HASH算法 对数
  • Python学习笔记(浙大MOOC)

    Python学习笔记 浙大MOOC Python 条件语句 循环语句 while语句 for语句 举例 异常处理 集合 add 和 remove min max len 和sum set 集合操作 字典 简单举例 相关函数 函数的定义与调用
  • HDFS权限

    HDFS的权限管理是被用户最常问到的问题之一 HDFS实现了一个和POSIX系统相似的文件和目录的权限模型 同时还支持POSIX ACLs规范 因为POSIX ACLs自己就比较复杂 还改变了一些传统POSIX权限体系的语义 所以大部分用户
  • python连接db2

    在python2 6下连接db2 步骤 1 安装python2 6 注 目前db2的驱动还不支持2 7 2 安装setuptools 下载地址http pypi python org pypi setuptools 3 设置环境变量path
  • python时间处理(三)pandas.to_datetime

    前两篇内容讲了两个单独的python库函数 今天带大家认识一个常用的工具 pandas to datetime 它是pandas库的一个方法 pandas库想必大家非常熟悉了 这里不再多说 这个方法的实用性在于 当需要批量处理时间数据时 无
  • df 命令

    NAME df report file system disk space usage SYNOPSIS df OPTION FILE 参数 a all 列出包括BLOCK为0的文件系统 block size SIZE use SIZE b
  • click.stop 阻止事件冒泡

    click 和 click stop 都是事件修饰符 用于处理鼠标点击事件 它们的区别在于 click 修饰符用于监听鼠标点击事件 并触发相应的处理函数 如果在处理函数中使用了 event preventDefault 则会阻止默认的行为
  • es 搜索推荐:Suggest

    搜索推荐 Suggest 概述 搜索一般都会要求具有 搜索推荐 或者叫 搜索补全 的功能 即在用户输入搜索的过程中 进行自动补全或者纠错 以此来提高搜索文档的匹配精准度 进而提升用户的搜索体验 这就是Suggest 四种Suggester
  • 在CSS中transition属性详解

    transform呈现的是一种变形结果 而Transation呈现的是一种过渡 通俗点说就是一种动画转换过程 如渐显 渐弱 动画快慢等 transition和transform是两种不同的动画模型 1 transition过渡属性trans
  • WebSocket 协议 RFC 文档(全中文翻译)

    概述 经过半年的捣鼓 终于将 WebSocket 协议 RFC6455 全篇翻译完成 现在将所有章节全部整理到一篇文章中 方便大家阅读 如果大家想看具体的翻译文档 可以去我的GitHub中查看 具体章节如下 译 WebSocket 协议 摘
  • 编程每日一题_C程序设计_整型数据阶乘计算

    描述 计算整型数据阶乘 1 算子递增 算子递增 并定义循环控制变量 解法一 while循环 include