大一下半期数据结构

数据结构实践任务2

求单链表结点的阶乘和

本题要求实现一个函数,求单链表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 i,j;int sum=0;while(L){for(i=1,j=1;i<=L->Data;i++)j*=i;L=L->Next;sum+=j;}return sum;}

PTA:6-3求单链表结点的阶乘和(15分)相关推荐

  1. 基础编程题目集 6-6 求单链表结点的阶乘和 (15 分)

    问题描述: 解题思路: 这里我选择用带备忘录的搜索(递归)来获取一个数的阶乘,避免测试样例数字比较大的时候容易超时,就不用循环求阶乘了 解题代码: int a[100] = {1}; int f(in ...

  2. 求单链表结点的阶乘和

    求单链表结点的阶乘和 (15分) 本题要求实现一个函数,求单链表L结点的阶乘和.这里默认所有结点的值非负,且题目保证结果在int范围内. 函数接口定义: int FactorialSum( List ...

  3. PTA 基础编程题目集 6-6 求单链表结点的阶乘和

    PTA 基础编程题目集 6-6 求单链表结点的阶乘和 本题要求实现一个函数,求单链表L结点的阶乘和.这里默认所有结点的值非负,且题目保证结果在int范围内. 函数接口定义: int Factorial ...

  4. PTA基础编程题目集-6-6 求单链表结点的阶乘和

    int FactorialSum( List L ){List p=L;int sum=0;if(p==NULL)return 0;while(p->Next!=NULL){int fact=1 ...

  5. Nwafu-OJ-1485 Problem o C语言实习题八——单链表结点的阶乘和

    问题 : C语言实习题八--单链表结点的阶乘和 时间限制: 1 Sec  内存限制: 128 MB 提交: 5120  解决: 1555 [提交][状态][讨论版] 题目描述 要求实现一个函数,求单向 ...

  6. PTA题目:求符合给定条件的整数集 (15分)

    求符合给定条件的整数集 (15分) 给定不超过6的正整数A,考虑从A开始的连续4个数字.请输出所有由它们组成的无重复数字的3位数. 输入格式: 输入在一行中给出A. 输出格式: 输出满足条件的的3位数 ...

  7. PTA: 6-7 两个有序链表序列的合并 (15 分)

    大一下半期数据结构 数据结构题目集 两个有序链表序列的合并 本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列. 函数接口定义: List Merge( List L1, L ...

  8. PTA:7-16 求符合给定条件的整数集 (15分)

    博主不定期更新[保研/推免.C/C++.5G移动通信.Linux.生活随笔]系列文章,喜欢的朋友[点赞+关注]支持一下吧!   给定不超过6的正整数A,考虑从A开始的连续4个数字.请输出所有由它们组成 ...

  9. c语言链表交换,求单链表的数据交换解决思路

    当前位置:我的异常网» C语言 » 求单链表的数据交换解决思路 求单链表的数据交换解决思路 www.myexceptions.net  网友分享于:2013-11-04  浏览:14次 求单链表的数据 ...

最新文章

  1. mysql 军规_MySQL军规
  2. matlab欧拉迭代,matlab机械臂正逆运动学求解问题,使用牛顿-欧拉迭代算法
  3. 利用Python模拟鼠标操作,一键将GIF文件载入CSDN的Markdown编辑器
  4. Jenkins使用遇到的问题总结
  5. ftp 断点续传 Android,Android使用FTP实现断点续传
  6. pppoe linux 配置文件,linux PPPOE服务端配置
  7. android 查找所有dialog_android 布局文件layout分组的简单使用
  8. 歌词滚动效果在Win8 Store 开发中的实现
  9. 在Ubuntu上搭建Hadoop群集
  10. Atitit.提升语言可读性原理与实践
  11. smart3D的初探索
  12. 模仿类似美团手机版应用源码
  13. 【阿里云-云栖社区】喜欢的记得关注(每日更新)
  14. 【Eclipse下载与安装教程】
  15. RAC的并发操作与分布式锁DLM
  16. Shell脚本自动源码包安装LA/NMP架构详解(赠软件包+脚本)
  17. Vue前端报错及原因分析集合
  18. 无线局域网攻防之Wi-Fi破解
  19. C语言知识-零零散散(一)
  20. 考研数学-基础阶段几何串讲1主讲人:王淳 -2020年06月26日

热门文章

  1. CAS单点登出实现案例
  2. Android Studio稍微较新的版本下载
  3. 二、服务器优化(3)服务器端优化措施
  4. Ubuntu16.04LTS+CUDA8.0+cuDNN5.1+Anaconda3(python3.6)+tensorflow_gpu-1.2.1安装过程全记录
  5. 事件相互独立的几种不同说法
  6. 易被忽视的贝叶斯概率
  7. 【转】simulink中的sample time设置
  8. 使用electron-builder来打包
  9. Kotlin实现LeetCode算法题之String to Integer (atoi)
  10. I/O多路复用之select,poll,epoll简介