データ構造実験のチェーンテーブル1:チェーンテーブル(構造関数)を順次確立する


データ構造実験のチェーンテーブル1:チェーンテーブルの順序確立
Time Limit: 1000MS 
Memory Limit: 65536KB
Problem Description
N個の整数を入力し、入力された順序に従って単一チェーンテーブル記憶を確立し、確立された単一チェーンテーブルを巡り、これらのデータを出力する.
Input
1行目に整数の個数Nを入力する.
2行目に各整数を順次入力します.
Output
この整数セットを出力します.
Example Input
8
12 56 4 6 55 15 33 62

Example Output
12 56 4 6 55 15 33 62

Code realization
#include 
#include 
typedef struct LNode
{
	int data;
	struct LNode *next;
}LNode;
//    
LNode *input(int n)
{
    LNode *head, *tail, *p;
    head = (LNode*)malloc(sizeof(LNode));
    tail = head;
    for(int i=0;idata);
        tail->next = p;
        tail = p;
        tail->next = NULL;
    }
    return head;
}
void output(LNode *head)
{
    LNode *p;
    p = head->next;
    while(p)
    {
        printf("%d",p->data);
        p = p->next;
        if(p)
            printf(" ");
        else
            printf("
"); } } int main() { LNode *head; int n; scanf("%d",&n); head = input(n); output(head); return 0; }
(方法2)
#include 
#include 
typedef struct LNode
{
	int data;
	struct LNode *next;
}LNode;
//    
void input(LNode *head, LNode *tail, int n)
{
    LNode  *p;
    for(int i=0;idata);
        tail->next = p;
        tail = p;
        tail->next = NULL;
    }
}
void output(LNode *head)
{
    LNode *p;
    p = head->next;
    while(p)
    {
        printf("%d",p->data);
        p = p->next;
        if(p)
            printf(" ");
        else
            printf("
"); } } int main() { LNode *head,*tail; int n; scanf("%d",&n); head = (LNode*)malloc(sizeof(LNode)); tail = head; input(head,tail,n); output(head); return 0; }