zoukankan      html  css  js  c++  java
  • PAT基础6-6

    6-6 求单链表结点的阶乘和 (15 分)

    本题要求实现一个函数,求单链表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
    ", FactorialSum(L));
    
        return 0;
    }
    
    /* 你的代码将被嵌在这里 */
    

    输入样例:

    3
    5 3 6
    

    输出样例:

    846

    int FactorialSum( List L )
    {
        int s=0,d,a;
        while(L)
        {
            d=L->Data;
            a=1;
            for(int i=1;i<=d;i++)
            {
                a*=i;
            }
            s+=a;
            L=L->Next;
        }
        return s;
    }

  • 相关阅读:
    git/github轻松上传本地项目
    ubuntu下python+flask+mysql完整开发环境配置
    木马另类删除文件的方法
    OpenCV资源
    实现bmp文件到png文件转换
    通过进程ID获得该进程主窗口的句柄
    有趣的Lua表
    让程序在win7下运行时弹出"以管理员身份运行"
    LuaStudio源码分析2资源文件
    LuaCURL
  • 原文地址:https://www.cnblogs.com/lxzbky/p/10470223.html
Copyright © 2011-2022 走看看