c语言练习25——求 1+2!+3!+4!……n!的和

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 //题目:求 1+2!+3!+4!……n!的和
 4 int main(){
 5 int s,i,n,a,sum;
 6 while(1){
 7 printf("请输入参数n:");
 8 scanf("%d",&n);
 9 sum=0;
10 for(i=1;i<=n;i++){
11     s=1;
12     for(a=1;a<=i;a++)
13     s=s*a;
14     sum=sum+s;
15     }
16 printf("1+2!+3!+……+%d!=%d\n________________________________\n",n,sum);
17 }
18 return 0;
19 }
20    

原文地址:https://www.cnblogs.com/gougouwang/p/11411643.html

时间: 2024-10-14 07:09:02

c语言练习25——求 1+2!+3!+4!……n!的和的相关文章

25:求特殊自然数

25:求特殊自然数 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 一个十进制自然数,它的七进制与九进制表示都是三位数,且七进制与九进制的三位数码表示顺序正好相反.编程求此自然数,并输出显示. 输入 无. 输出 三行:第一行是此自然数的十进制表示:第一行是此自然数的七进制表示:第一行是此自然数的九进制表示. 样例输入 (无) 样例输出 (不提供 #include<cstdio> int main(){printf("248\n503\n305

循环-25. 求给定序列前N项和之三

循环-25. 求给定序列前N项和之三(15) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 来源 ZOJ 本题要求编写程序,计算序列 1 + 1/3 + 1/5 + ... 的前N项之和. 输入格式: 输入在一行中给出一个正整数N. 输出格式: 在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位.题目保证计算结果不超过双精度范围. 输入样例: 23 输出样例: sum = 2.549541 1 #include<

C语言中怎么求动态数组大小

先来个简单的例子 int a[] = {1,2,3}; int arr_len = 0; arr_len = sizeof(a)/sizeof(int); 解释:sizeof() 关键字是求出对象所占用的内存空间的大小,so, sizeof(a)是算出整个数组占用的空间的大小. 因为是整数数组,一个整数在32位系统上占用4个字节,不同的系统数值可能不同, 用sizeof(int)可以计算出 一个整数占用的内存空间大小.所以用sizeof(a)/sizeof(int)数组中有几个整数,也即算出了数

寒城攻略:Listo 教你 25 天学会 Swift 语言 - 25 Listo&#39;s Conclusion

import Foundation //*********************************************************************************************** //1.Listo's Conclusion(Listo 的编写总结) //_______________________________________________________________________________________________

c语言经典算法—求0—7 所能组成的奇数个数

题目:求0—7 所能组成的奇数个数. 算法思想:这个问题其实是一个排列组合的问题,设这个数为sun=a1a2a3a4a5a6a7a8,a1-a8表示这个数的某位的数值,当一个数的最后一位为奇数时,那么这个数一定为奇数,不管前面几位是什么数字.如果最后一位数为偶数,则这个数一定为偶数.a1-a8可以取0-7这个八个数字,首位数字不为0.从该数为一位数到该数为8位数开始统计奇数的个数:1.当只有一位数时也就是该数的最后一位,奇数个数为42.当该数为两位数时,奇数个数为4*7=283.当该数为三位数时

C语言学习笔记--求100-999之间的素数(用函数调用)

编写函数prime(n),如果n为素数,return 1,否则return 0.在main函数中调用函数prime(n),求100-999之间的素数 1 #include<stdio.h> 2 #include<math.h> 3 int main() 4 { 5 int prime(int i); 6 int i; 7 for(i=100;i<=999;i++) 8 { 9 prime(i); 10 if(prime(i)==1) 11 { 12 printf("

用R语言实现一个求导的简单例子

在学习导数的时候,老师都会这样解释,假设y=f(x),对点(x0,y0)的求导过程如下:设dx是一个很小的数=> y0+dy=f(x0+dx)=> dy=f(x0+dx)-y0则在这一点的导数a=dy/dx这样假设的前提是dx很小,所以x0至(x0+dx)很短,可以近似为一条直线,则dy/dx可以看成是点(x0,y0)和点(x0+dx,y0+dy)连成直线的斜率因此关于某个点的导数,其意义也可以解释成在该点的变化率 下面用R语言实现一个简单例子:假设:y=1/x,求点(1,1)的导数 x<

C语言用递归求斐波那契数,让你发现递归的缺陷和效率瓶颈

递归是一种强有力的技巧,但和其他技巧一样,它也可能被误用. 一般需要递归解决的问题有两个特点: 存在限制条件,当符合这个条件时递归便不再继续: 每次递归调用之后越来越接近这个限制条件. 递归使用最常见的一个例子就是求阶乘,具体描述和代码请看这里:C语言递归和迭代法求阶乘 但是,递归函数调用将涉及一些运行时开销--参数必须压到堆栈中,为局部变量分配内存空间(所有递归均如此,并非特指求阶乘这个例子),寄存器的值必须保存等.当递归函数的每次调用返回时,上述这些操作必须还原,恢复成原来的样子.所以, 基

武汉科技大学ACM :1006: 零起点学算法25——求两点之间的距离

Problem Description 输入平面坐标系中2点的坐标,输出它们之间的距离 Input 输入4个浮点数x1 y1 x2 y2,分别是点(x1,y1) (x2,y2)的坐标(多组数据) Output 输出它们之间的距离,保留2位小数(每组数据一行) Sample Input 1 0 2 0 Sample Output 1.00 1 #include<stdio.h> 2 3 #include<math.h> 4 5 6 7 int main() 8 9 { 10 11 f