一个整数的阶乘c语言程序设计,1138: 【C语言训练】计算一个整数N的阶乘

博主分享了自己在大学三年级时回顾学习历程,尤其是C语言基础薄弱的经历。通过刷题重拾知识,记述了初次遇到杭电题目时的挫败感,以及解决阶乘问题时的小失误。展示了代码比较和优化的过程,突出了细节决定成败的学习过程。
摘要由CSDN通过智能技术生成

本来我的基础比较薄弱,现在大三了,大一大二就没有好好的刷题,而且在大一的时候C语言还挂科了,足以见得我C语言学的有多渣,现在才想着刷题,说不后悔是假的,但是我就是想着说,总比一直不知道的要好,今天在杭电的网站上面看了题目,发现自己的能力还达不到那个境界,就跑到了学校的网站刷题,都是一些很基础的题目,想着慢慢来吧,也许我的博客里没有什么可以学习的,但是这应该是我的学习经历吧。

题目描述

计算一个整数N的阶乘

输入

一个整数N, (0〈=N〈=12)

输出

整数N的阶乘.

样例输入

5

样例输出

120

看到这个题目的时候,还记得我大一的时候做过这个题目,本来想着会很快做出来的,后来答案做出来没有错,提交第一次的时候还是错了,返回看题目,发现还有一个N的条件忘记加进去了,最后又试了一次,还是错误,我就想着说上网上查查为什么总是错误i,最后才发现,是因为N的定量的时候我定的是整型int,在这里应该定long型,后来提交后就正确了,而且比我在网上借鉴的占的内存要小。

#includeint main(void)

{

long N,s=1;

scanf("%ld",&N);

if(N>=0 && N<=12){

while(N)

{

s=s*N;

N--;

}

}

printf("%d\n",s);

return 0;

}

这是我的代码

#include int main()

{

long inc,ans,i;

if(scanf("%ld",&inc)!=1)

{

return -1;

}

ans=1;

for(i=1;i<=inc;i++)

{

ans=ans*i;

}

printf("%ld\n",ans);

return 0;

}

这是我借鉴的代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值