資源簡介
建立一個單鏈表,并對輸入值進行升序排列并輸出
代碼片段和文件信息
#include?
#include?
struct?lnode
{
?????int?data;
?????struct?lnode?*next;?????
}?;
struct?lnode*?creatlnode(struct?lnode?*lint?n);
void?printlnode(struct?lnode?*l);
/**********************************************
建表
***********************************************/
struct?lnode*?creatlnode(struct?lnode?*lint?n)
{
????struct?lnode?*p*h;
????int?ix;???????????????????????????????????????????
????l=(struct?lnode*)?malloc?(sizeof(struct?lnode));
????p=l;
????for(i=1;i<=n;i++)
{
??????h=(struct?lnode*)?malloc?(sizeof(struct?lnode));
??????scanf(“%d“&x);
??????h->data=x;??
??????h->next=NULL;
??????p->next=h;
??????p=p->next;
}
?return?l;
}
/****************************************************
輸出
*****************************************************/
void?printlnode(struct?lnode?*l)
{
????struct?lnode?*p;
????p=l->next;
????printf(“%s\n““the?data:“);
????while(p!=NULL)
{?
?printf(“%d?“p->data);
?????????p=p->next;
}
????printf(“\n“?);
}
/****************************************************************
???????????????????進行升序排列
*****************************************************************/
void?sort1(struct?lnode?*h)?
{
???int?temp;?
???struct??lnode?*p*q;?
???p=h;?
???while(p) //如果P存在
?{?
????? q=p->next; //臨近的2個數據進行比較
???? while(q)
?{
if(p->data>q->data) //對比
?{?
temp=p->data; //先吧P的值放到temp里面
???????? p->data=q->data; //把Q的值賦值給P
????????? q->data=temp; //把原來temp里面的只放到Q上
?}?
??????? q=q->next;
?}?
????? p=p->next;?
?}?
????printlnode(h);
}?
void?main()
{
????struct?lnode?*la*lb*lc;
????int?nm;
????printf(“input??n!\n“);
????scanf(“%d“&n);
????printf(“input?%d?ge?numbers!\n“n);
????la=creatlnode(lan);?//建表La
????sort1(la); ?//升序排列并輸出
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1920??2009-03-06?14:06??shengxupailie\paixu.c
?????文件???????3387??2009-03-06?14:07??shengxupailie\paixu.dsp
?????文件??????33792??2009-03-06?14:07??shengxupailie\Debug\vc60.idb
?????文件??????45056??2009-03-06?14:07??shengxupailie\Debug\vc60.pdb
?????文件?????184616??2009-03-06?14:07??shengxupailie\Debug\paixu.pch
?????文件???????5603??2009-03-06?14:07??shengxupailie\Debug\paixu.obj
?????文件?????182088??2009-03-06?14:07??shengxupailie\Debug\paixu.ilk
?????文件?????184408??2009-03-06?14:07??shengxupailie\Debug\paixu.exe
?????文件?????361472??2009-03-06?14:07??shengxupailie\Debug\paixu.pdb
?????文件??????33792??2009-03-06?14:08??shengxupailie\paixu.ncb
?????文件???????1654??2009-03-06?14:07??shengxupailie\paixu.plg
?????文件????????518??2009-03-06?14:08??shengxupailie\paixu.dsw
?????文件??????48640??2009-03-06?14:08??shengxupailie\paixu.opt
?????目錄??????????0??2009-03-06?14:07??shengxupailie\Debug
?????目錄??????????0??2009-03-06?13:58??shengxupailie
-----------?---------??----------?-----??----
??????????????1086946????????????????????15
評論
共有 條評論