PTA 基础编程题目集 6-6 求单链表结点的阶乘和
PTA 基础编程题目集 6-6 求单链表结点的阶乘和
本题要求实现一个函数,求单链表L结点的阶乘和。这里默认所有结点的值非负,且题目保证结果在int范围内。
函数接口定义:
int FactorialSum( List L );
其中单链表List的定义如下:
typedef struct Node *PtrToNode;
struct Node {int Data; /* 存储结点数据 */PtrToNode Next; /* 指向下一个结点的指针 */
};
typedef PtrToNode List; /* 定义单链表类型 */
裁判测试程序样例:
#include <stdio.h>
#include <stdlib.h>typedef struct Node *PtrToNode;
struct Node {int Data; /* 存储结点数据 */PtrToNode Next; /* 指向下一个结点的指针 */
};
typedef PtrToNode List; /* 定义单链表类型 */int FactorialSum( List L );int main()
{int N, i;List L, p;scanf("%d", &N);L = NULL;for ( i=0; i<N; i++ ) {p = (List)malloc(sizeof(struct Node));scanf("%d", &p->Data);p->Next = L; L = p;}printf("%d\n", FactorialSum(L));return 0;
}/* 你的代码将被嵌在这里 */
输入样例:
3
5 3 6
输出样例:
846
int FactorialSum(List L) {int a,i,b=0;while (L!=NULL){a = 1;for ( i = 1; i <= L->Data; i++) {a = a*i;}b = b + a;L = L->Next;}return b;}
PTA 基础编程题目集 6-6 求单链表结点的阶乘和相关推荐
- PTA 基础编程题目集 7-18 二分法求多项式单根 C语言
PTA 基础编程题目集 7-18 二分法求多项式单根 C语言 二分法求函数根的原理为:如果连续函数f(x)在区间[a,b]的两个端点取值异号,即f(a)f(b)<0,则它在这个区间内至少存在1个 ...
- PTA 基础编程题目集 7-21 求特殊方程的正整数解 C语言
PTA 基础编程题目集 7-21 求特殊方程的正整数解 C语言 输入样例1: 884 输出样例1: 10 28 20 22 输入样例2: 11 输出样例2: No Solution #include& ...
- PTA 基础编程题目集 7-16 求符合给定条件的整数集 C语言
PTA 基础编程题目集 7-16 求符合给定条件的整数集 C语言 给定不超过6的正整数A,考虑从A开始的连续4个数字.请输出所有由它们组成的无重复数字的3位数. 输入格式: 输入在一行中给出A. 输出 ...
- PTA 基础编程题目集 7-14 求整数段和 C语言
PTA 基础编程题目集 7-14 求整数段和 C语言 给定两个整数A和B,输出从A到B的所有整数以及这些数的和. 输入格式: 输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分 ...
- PTA 基础编程题目集 7-12 两个数的简单计算器 C语言
PTA 基础编程题目集 7-12 两个数的简单计算器 C语言 本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加.减.乘.除或求余运算.题目保证输入和输出均不超过整型范围. 输入格式 ...
- PTA 基础编程题目集 7-27 冒泡法排序 C语言
PTA 基础编程题目集 7-27 冒泡法排序 C语言 将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们.通过一遍扫描,则最后一 ...
- PTA 基础编程题目集 7-33 有理数加法 C语言
PTA 基础编程题目集 7-33 有理数加法 C语言 本题要求编写程序,计算两个有理数的和. 输入格式: 输入在一行中按照a1/b1 a2/b2的格式给出两个分数形式的有理数,其中分子和分母全是整形范 ...
- PTA 基础编程题目集 7-24 约分最简分式 C语言
PTA 基础编程题目集 7-24 约分最简分式 C语言 分数可以表示为分子/分母的形式.编写一个程序,要求用户输入一个分数,然后将其约分为最简分式.最简分式是指分子和分母不具有可以约分的成分了.如6/ ...
- PTA 基础编程题目集 7-7 12-24小时制 C语言
PTA 基础编程题目集 7-7 12-24小时制 C语言 编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间. 输入格式: 输入在一行中给出带有中间的:符号(半角的冒号)的24小时制 ...
最新文章
- Xcode 调试的正确打开方式——Debugging
- 用Python解“支票问题”题
- linux下应用程序性能剖分神器gprofiler-tools-安装和使用
- AWS如何迁移实例到另一个区?
- Linux本地yum源配置以及使用yum源安装gcc编译环境
- grep v grep_使用grep4j轻松测试分布式组件上的SLA
- 【华为云技术分享】竞享实例:让你尽享云服务的“鱼”和“熊掌”
- NSTimer--转
- 40亿个手机号码如何去重?
- 篮球计时计分器c语言程序,C51的篮球计时计分器程序
- Q 系列PLC ST 语言编程笔记
- 苹果乔布斯的成功启示,看完要被惊醒!
- STM32LL库系列教程(一)—— LL库概览及资料
- 复杂业务下,我们为何选择Akka作为异步通信框架?
- FBReader源码详细分析 序言
- 小程序(倒计时的制作)
- 高新技术企业认定的价值
- html动画箭头,纯css动画实现箭头向右无限前进
- Ubuntu通过PPA下载指定版本软件
- 40年代中期至50年代末
热门文章
- MATLAB 1\n\n
- The Third Revolution in Sequencing Technology
- 15天Python入门-3-流程控制-选择结构
- Go语言,作为一门没有对象的OOP
- 树莓派开发1-刷机,ssh登录
- 三十一、二叉排序树的创建、删除和遍历
- GAN人脸修复--Generative Face Completion
- 【keras】Input 0 of layer conv2d is incompatible with the layer. expected ndim=4, found ndim=3
- centos7 pam mysql.so,Centos7下搭建FTP服务器(博主亲测不坑)
- centos7 systemctl配置开机自启动服务