青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-145  評(píng)論-173  文章-70  trackbacks-0

設(shè)某線性表數(shù)據(jù)元素的類型為整型,以鏈表結(jié)構(gòu)存儲(chǔ)線性表。試編程實(shí)現(xiàn):

(1) 輸入數(shù)據(jù)元素,以先進(jìn)先出形式創(chuàng)建單鏈表

(2) 銷毀單鏈表

(3) 線性表置空

(4) 求線性表長(zhǎng)度

(5)在第i個(gè)數(shù)據(jù)元素前插入新的元素

(6) 刪除第i個(gè)元素

(7) 顯示線性表中的全部元素

(8) 求最大元素的值和平均值

 


#include<stdio.h>
#include<conio.h>
#include<malloc.h>
#include<stdlib.h>
#define ERROR     0
#define OK        1
#define OVERFLOW  -2
typedef struct LNode{
    int data;
    struct LNode *next;
}LNode,*LinkList;

int Create_List(LinkList L,int length)
{//創(chuàng)建一個(gè)帶表頭結(jié)點(diǎn)的大小為n個(gè)的單鏈表
    int i;                   
    LinkList p, tail; //聲明一定要在前面,否則會(huì)出錯(cuò)
        tail=L;
    for(i=0;i<length;i++)
    {
        p=(LinkList)malloc(sizeof(LNode));
        printf("請(qǐng)輸入%d個(gè)數(shù)據(jù)\n",length);
        scanf("%d",&p->data);
        p->next=NULL;
        tail->next=p;
        tail=tail->next;
    }
       return OK;
}

int display_all(LinkList L,int length) //依賴于長(zhǎng)度,可是卻不定,長(zhǎng)度函數(shù)有問題。
{//顯示所有的數(shù)據(jù)元素
    int i;
    printf("線性表的全部數(shù)據(jù)元素如下:\n");
    for(i=0;i<length-1;i++)
    {
        printf("%d ",L->next->data);
        L=L->next;
    }
    printf("\n");
    return OK;
}

int length_L(LinkList L) //有問題
{//求得線性表的長(zhǎng)度
    int length=0;
    LinkList p=L;
    while(p!=NULL)
    {
        ++length;
        p=p->next;
    }
    return length;
}

int ListInsert(LinkList L,int i ,int *e)
{//插入元素
    LinkList p=L,s;
    int j=0;
    while(p&&j<i-1)
    {
        p=p->next;
        ++j;
    }
     if(!p||j>i-1) return ERROR;
     s=(LinkList)malloc(sizeof(LNode));
     s->data=*e;
     s->next=p->next;
     p->next=s;
     return OK;
}
int ListDelet(LinkList L, int i)
{//刪除指定位置的結(jié)點(diǎn)
    LinkList p=L,q;
    int j=0;
    while(p->next&&j<i-1)  //尋找第i-1個(gè)結(jié)點(diǎn)
    {
        p=p->next;
        ++j;
    }
    if(!(p->next)||j>i-1) return ERROR;
    q=p->next; p->next=q->next;
    free(q);
    return OK;
}
int Destroy_L(LinkList L)   //這里會(huì)遇到一個(gè)問題,如果將頭結(jié)點(diǎn)free掉的話就會(huì)出錯(cuò),
                            //因?yàn)轭^結(jié)點(diǎn)不是自己分配的,而是系統(tǒng)分配的,在主函數(shù)中,所以無法釋放
{
     LinkList head=L,p;
     p=head;
     if (head)
         p = head->next ;
     head = head->next ;
     while(head!=NULL)
     {
         p=head;
         head=head->next;
         free(p);
     }
     return OK;
}
int ClearList(LinkList L)
{//線性表置空
    L->next=NULL;  //將頭結(jié)點(diǎn)指針域置為NULL
    return OK;
}
int max_num(LinkList L)
{
    LinkList p=L->next;
    int max=0;
    while(p!=NULL)
    {
        if(max<=p->data)
            max=p->data;
        p=p->next;
    }
    return max;
}

float aver_num(LinkList L)  //注意函數(shù)名不要和變量同名,很容易出錯(cuò)
{ //求出所有元素的平均值
    LinkList p=L->next;
    float average;
    int sum=0;
    int length=length_L(L);
    while(p!=NULL)
    {
        sum+=p->data;
        p=p->next;
    }
    average=(float)sum/(length-1);
    return average;
}

void main()
{
    int i,get,length,e;
    LNode L;           //創(chuàng)建頭結(jié)點(diǎn)L
    L.next=NULL;
    do{
        printf("\n");
        printf("1.輸入數(shù)據(jù)元素,以先進(jìn)先出形式創(chuàng)建單鏈表\n");
        printf("2.銷毀單鏈表\n");
        printf("3.線性表置空\(chéng)n");
        printf("4.求線性表長(zhǎng)度\n");
        printf("5.在第i個(gè)數(shù)據(jù)元素前插入新的元素\n");
        printf("6. 刪除第i個(gè)元素\n");
        printf("7.顯示線性表中的全部元素\n");
        printf("8.求最大元素的值和平均值\n");
        printf("9.退出\n");
        printf("請(qǐng)輸入你選擇的操作序號(hào)\n");
        scanf("%d",&get);
        switch(get){
             case 1:
                    printf("請(qǐng)輸入數(shù)據(jù)元素的個(gè)數(shù)\n");
                     scanf("%d",&length);
                    Create_List(&L,length);
                    break;
             case 2:
                     Destroy_L(&L);
                     break;
             case 3:
                     ClearList(&L);
                     break;
             case 4:
                 length=length_L(&L);
                 printf("這個(gè)線性鏈表的長(zhǎng)度(含頭結(jié)點(diǎn))為%d\n",length);
                 break;
             case 5:
                 printf("請(qǐng)分別輸入你要插入數(shù)據(jù)的元素的位置(第i個(gè)元素之前)和值(整型)\n");
                 scanf("%d,%d",&i,&e);
                 ListInsert(&L,i,&e);
                 break;
             case 6:
                 printf("請(qǐng)分別輸入你要?jiǎng)h除數(shù)據(jù)的元素的位置(第i個(gè)元素)\n");
                 scanf("%d",&i);
                 ListDelet(&L,i);
                 break;
             case 7:
                   length=length_L(&L);
                   display_all(&L,length);
                    break;
             case 8:
                   printf("線性表中的最大元素是%d\n",max_num(&L));
                   printf("線性表中所有元素的平均值%f\n",aver_num(&L));
                    break;
             case 9:
                 break;
        }
    }while(get!=9);
            
}
posted on 2009-11-27 21:35 deercoder 閱讀(4611) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)結(jié)構(gòu)和算法分析
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一本久道久久久| 一区二区三区鲁丝不卡| 国产精品久久亚洲7777| 伊人久久大香线蕉综合热线| 亚洲视频综合| 亚洲精品网址在线观看| 猛男gaygay欧美视频| 国产一区99| 欧美一区二区三区免费视| 亚洲国产一区二区a毛片| 久久se精品一区精品二区| 国产精品日韩精品欧美在线| 在线午夜精品| 99视频+国产日韩欧美| 欧美日韩色综合| 中文精品视频一区二区在线观看| 免费看黄裸体一级大秀欧美| 久久一日本道色综合久久| 在线国产精品播放| 欧美大片在线看| 久久精品一级爱片| 亚洲国产成人精品久久| 亚洲国产精品传媒在线观看| 欧美h视频在线| 亚洲精品欧美日韩专区| 亚洲精品欧美在线| 国产精品v欧美精品v日本精品动漫| 亚洲色图自拍| 亚洲视频第一页| 国产欧美日韩免费| 久久婷婷av| 久久久久国产精品午夜一区| 亚洲国产精品久久人人爱蜜臀| 欧美黄在线观看| 欧美日韩成人一区二区| 亚洲欧美国产不卡| 欧美在线网站| 日韩亚洲欧美在线观看| 亚洲自拍偷拍福利| 亚洲第一精品影视| 一本色道久久88综合亚洲精品ⅰ| 国产欧美日韩不卡免费| 免费日韩av片| 欧美午夜精品理论片a级按摩| 久久精品国产2020观看福利| 美女在线一区二区| 亚洲一区在线观看视频| 欧美一区2区三区4区公司二百| 在线观看日韩一区| 一本久久综合亚洲鲁鲁| 国内成人在线| 99在线|亚洲一区二区| 国产亚洲精品自拍| 亚洲精品日韩在线观看| 国产欧美日韩在线播放| 亚洲国产精彩中文乱码av在线播放| 欧美视频中文一区二区三区在线观看 | 亚洲一区成人| 亚洲黄色成人| 久久久久一本一区二区青青蜜月| 亚洲美女在线视频| 欧美一区久久| 亚洲视频在线观看视频| 久久综合图片| 欧美影院成年免费版| 欧美jizz19性欧美| 久久精品一区中文字幕| 欧美激情精品久久久| 久久精品国产一区二区三区| 欧美成人亚洲| 美女性感视频久久久| 国产精品chinese| 亚洲精品国久久99热| 亚洲国产成人av在线| 欧美中文字幕在线视频| 亚洲资源在线观看| 欧美精品免费视频| 欧美激情视频一区二区三区在线播放 | 久久福利电影| 欧美一级一区| 欧美网站在线| 亚洲精品在线免费| 日韩视频二区| 欧美成人综合网站| 亚洲二区三区四区| 伊人成年综合电影网| 欧美一级黄色录像| 欧美在线日韩精品| 欧美三级视频在线播放| 亚洲精品一区二| 亚洲毛片网站| 欧美日韩国产成人| 欧美激情bt| 最近中文字幕mv在线一区二区三区四区| 欧美一区二区视频网站| 久久精品五月婷婷| 国产一区视频在线看| 欧美在线影院| 暖暖成人免费视频| 亚洲精品乱码久久久久久日本蜜臀| 久久综合999| 亚洲激情午夜| 一本在线高清不卡dvd| 欧美伦理a级免费电影| 亚洲美女淫视频| 午夜精品区一区二区三| 国产视频自拍一区| 久久精品理论片| 欧美激情在线播放| 一本久道综合久久精品| 欧美日韩一区二区三区四区在线观看 | 新狼窝色av性久久久久久| 久久国产精品久久久久久| 亚洲一区在线免费| 99精品欧美一区| 欧美日韩免费看| 欧美一级视频免费在线观看| 99视频有精品| 日韩视频免费在线| 欧美国产日韩一区二区在线观看| 欧美国产视频一区二区| 99精品热视频只有精品10| 欧美午夜精品理论片a级大开眼界| 亚洲综合第一| 久久久久久久久一区二区| 国产麻豆9l精品三级站| 久久精品国产99| 国产亚洲精品久| 蜜桃av噜噜一区| 这里只有精品视频在线| 欧美一级午夜免费电影| 日韩视频一区二区三区| 先锋影音久久久| 巨乳诱惑日韩免费av| 日韩一级不卡| 亚洲免费影视| 亚洲免费一在线| 模特精品在线| 久久久精品性| 欧美精品97| 久久久国产精品一区二区三区| 亚洲一区欧美| 亚洲人成小说网站色在线| 欧美韩国一区| 麻豆视频一区二区| 欧美一区二区| 中文在线不卡| 中文亚洲欧美| 久久精品免费播放| 欧美精品观看| 亚洲最新中文字幕| 一区二区三区四区五区在线| 欧美日韩一区二区三区在线 | 国产精品一区二区三区久久久| 欧美韩国一区| 亚洲国产合集| 激情欧美日韩一区| 亚洲一区二区毛片| 亚洲国产精品一区二区www在线| 欧美在线关看| 亚洲高清av在线| 亚洲日本欧美日韩高观看| 欧美日韩国产成人在线91| 9色精品在线| 午夜精品久久久久久99热软件| 亚洲一二三区在线| 亚洲欧洲日产国产综合网| 欧美性大战久久久久| 久久九九免费视频| 性色一区二区| 亚洲欧美国产制服动漫| 一区二区欧美精品| 亚洲免费观看视频| 亚洲清纯自拍| 亚洲日本电影在线| 亚洲黄色性网站| 亚洲激情成人网| 亚洲三级观看| 亚洲美洲欧洲综合国产一区| 亚洲第一精品夜夜躁人人躁| 欧美黑人在线播放| 久久综合色8888| 欧美黄色一区二区| 国产精品久久久一区二区三区| 欧美成人免费观看| 悠悠资源网久久精品| 欧美日韩一区二区在线视频| 亚洲精品久久久久久久久| 亚洲图片你懂的| 亚洲免费观看| 国产精品久久久久久久久久ktv | 亚洲精华国产欧美| 欧美一区二区视频免费观看| 欧美18av| 久久狠狠久久综合桃花| 亚洲精选中文字幕| 尤物九九久久国产精品的特点 | 亚洲欧美精品中文字幕在线| 亚洲成色777777在线观看影院| 日韩午夜视频在线观看|