6-3チェーンテーブルのテーブル長を求める

1731 ワード

https://pintia.cn/problem-sets/15/problems/726
本題は1つの関数を実現することを要求して、チェーン式の表の長さを求めます.
関数インタフェースの定義:
int Length( List L );

ここで、List構造は以下のように定義される.
typedef struct LNode *PtrToLNode;
struct LNode {
    ElementType Data;
    PtrToLNode Next;
};
typedef PtrToLNode List;
Lは所与の単一チェーンテーブルであり、関数Lengthはチェーンテーブルの長さを返す.
審判試験プログラムのサンプル:
#include 
#include 

typedef int ElementType;
typedef struct LNode *PtrToLNode;
struct LNode {
    ElementType Data;
    PtrToLNode Next;
};
typedef PtrToLNode List;

List Read(); /*        */

int Length( List L );

int main()
{
    List L = Read();
    printf("%d
", Length(L)); return 0; } /* */

サンプルを入力:
1 3 4 5 2 -1

出力サンプル:
5

提交代码
int Length( List L )
{
    int len = 0;
    while(L!=NULL)
    {
        L = L->Next;
        len++;
    }
    return len;
}