#include<iostream>
using namespace std;
struct Number //鏈表的類型
{
char data; //鏈表當前結點的值
struct Number *next; //鏈表當前結點指向下一結點的指針
}*number;
void CreateList(Number *&L) //創(chuàng)建鏈表
{
Number *s,*r; //定義兩個鏈表類型的臨時指針
char x; //定義一個臨時字符變量
L=(Number *)malloc(sizeof(Number)); //為頭結點開辟空間
L->next=NULL; //此時頭結點的后繼指針和前驅(qū)指針賦值為空
r=L; //是r指針指向頭結點
x=getchar(); //用x接受一個從鍵盤輸入的字符
while(x!='\n') //控制當輸入回車鍵時結束
{
s=(Number *)malloc(sizeof(Number)); //開辟下一結點的空間
s->data=x;
r->next=s; //r的后繼指針指向s
r=s; //是s指向r
x=getchar(); //用x接受一個從鍵盤輸入的字符
}
r->next=NULL; //當創(chuàng)建結束時,r的后繼指針為空
}
void PrintList(Number *L) //輸出鏈表
{
Number *p=L->next; //定義一個臨時指針并指向鏈表的第一個結點
while(p!=NULL) //判斷結點是否為空,空就結束
{
cout<<p->data; //輸出結點的值
p=p->next; //指向下一個結點
}
cout<<endl; //換行
}
void InverseList(Number *L) //鏈表的逆置
{
Number *p=L->next,*q=L->next;
q=q->next;
p->next=NULL;
p=q;
while(p!=NULL)
{
q=q->next;
p->next=L->next;
L->next=p;
p=q;
}
}
void DestroyList(Number *&L) //銷毀鏈表
{
Number *p=L,*q=p->next;
while(q!=NULL)
{
free(p); //釋放p的空間
p=q;
q=p->next;
}
cout<<"釋放鏈表"<<endl;
}
int main()
{
cout<<"請輸入一個鏈表:";
CreateList(number); //調(diào)用創(chuàng)建鏈表
cout<<"********************************************************************************";
cout<<"輸入的鏈表為:"<<endl;
PrintList(number); //調(diào)用輸出鏈表
InverseList(number); //調(diào)用逆置鏈表
cout<<"此鏈表的逆置為:"<<endl;
PrintList(number); //調(diào)用輸出鏈表
cout<<"********************************************************************************";
DestroyList(number); //調(diào)用銷毀鏈表的函數(shù)
return 0;
}
1、鏈表的抽象數(shù)據(jù)類型定義為:
ADTNumber{
數(shù)據(jù)對象:D={ai|ai∈(0,1,…,9),i=0,1,2,…,n,n≥0}
數(shù)據(jù)關系:R={<ai-1,ai>|ai-1,ai∈D,i=1,2,…,n}
基本操作:
CreateList(&L)
操作結果:創(chuàng)建一個鏈表L。
PrintList(L)
初始條件:鏈表L已存在。
操作結果:在屏幕上輸出鏈表的值。
InverseList(L)
初始條件:鏈表L已存在。
操作結果:將鏈表逆置。
DestroyList(&L)
初始條件:鏈表L已存在。
操作結果:銷毀鏈表L。
}ADTNumber
2、本程序包含五個模塊:
(1)主程序模塊:
int main(){
定義變量;
接受命令;
處理命令;
退出(return 0);
}
(2)創(chuàng)建鏈表模塊--產(chǎn)生一個鏈表;
(3)輸出鏈表模塊--把鏈表輸出;
(4)鏈表逆置模塊--將鏈表逆置;
(5)銷毀鏈表模塊--程序結束后釋放鏈表開辟的空間。
各模塊之間的調(diào)用關系如下:
主程序模塊 創(chuàng)建鏈表模塊
創(chuàng)建鏈表模塊 輸出鏈表模塊 鏈表逆置模塊
輸出鏈表模塊 創(chuàng)建鏈表模塊 銷毀鏈表模塊
1、本程序由用戶輸入運行命令和數(shù)據(jù),運行結果顯示在其后。
2、程序執(zhí)行的命令包括:
1)創(chuàng)建一個鏈表;2)執(zhí)行鏈表的逆置;3)結束。
2、測試數(shù)據(jù)
鏈表:abc123
1.如果你有三相電源,可以裝一個30A的三相漏電開關作為總開關,你可以把廚房、廁所、空調(diào)各裝一路開關。廚房用單級20A開關一個,廁所用一個30A單級開關,空調(diào)如果總功率是7千瓦,可用一個15A的單級開...
中華人民共和國城鄉(xiāng)建設環(huán)境保護部 ????????????中華人民共和國國家教育委員會???????????標準 ?托兒所、幼兒園建筑設計規(guī)范 第一章?總則 ???第1.0.1條???為保證托兒所、幼...
面向?qū)ο筌浖O計說明書模板 1 概述 1.1 系統(tǒng)簡述 對系統(tǒng)要完成什么,所面向的用戶以及系統(tǒng)運行的環(huán)境的簡短描述,這部分主要來源于需求說明書的開始部分。 1.2 軟件設計目標 這部分論述整個系統(tǒng)的設...
1、在創(chuàng)建長整數(shù)時,沒有使用getchar()來接受字符,而用C++中的cin>>來輸入,這樣使得每一次輸入之后都要按回車鍵,而且在輸入結束時控制也不方便,使用getchar()函數(shù)解決了這一問題。
2、首先,遇到的問題就是if條件中的"= ="中少了一個"="導致編譯正確,但是一運行就錯誤,這個問題不該錯的,以后一定重視每一個細節(jié)。還有就是鏈表的使用過程中,指針太多,一會兒指向這個,一會兒又指向那個,如果思路不清楚的話,很容易弄暈的;有時候一個指針指向空的時候根本就不知道,編譯沒錯誤,檢查不出來,一運行就不正確,有時候運行正確了,但是結果卻不正確,這還好點,有時候指針指向空了,運行就彈出錯誤要終止程序。經(jīng)過一步一步的測試,一步一步的運行,花了不少時間終于弄出來了。
3、在銷毀鏈表的時候,也遇到過一個問題,現(xiàn)在還沒弄明白是為什么。在銷毀鏈表的函數(shù)中,如果參數(shù)接受兩個鏈表來銷毀的話,如:void DestroyList(Number *&L1,Number *&L2),運行會出錯,或許是我寫的代碼不正確;但是,當用void DestroyList(Number *&L)來一個鏈表一個鏈表的銷毀就沒問題。
格式:pdf
大小:1.1MB
頁數(shù): 69頁
評分: 4.6
XXXXXXXX 有限公司 發(fā)行 產(chǎn) 品 硬 件 設 計 規(guī) 范 文件編號: XXXXXX 版 本 生效 日期 核 準 審 核 編 寫 1.7 2000/3/17 至少以下部門或地點必須持有該文件之部分或全部 公司領導( 6) 品質(zhì)工程部 工業(yè)設計部 通信產(chǎn)品研究部 網(wǎng)絡產(chǎn)品研究部 瘦客戶機研究部 移動計算研究部 收 文: XXX * 非 經(jīng) 本 公 司 同 意 , 嚴 禁 影 印 * XXXXXXXX 有限公司 產(chǎn) 品 硬 件 設 計 規(guī) 范 文 件 編 號 XXXXXX 文 件 目 錄 版 次 1.7 頁 次 1/1 序 號 文 件 細 目 頁 數(shù) 備 注 1 硬件設計工作流程規(guī)范 10 附件 5頁,附表 2頁 2 硬件系統(tǒng)設計原則 2 3 電源設計規(guī)范 2 4 EMC 設計規(guī)范 3 5 PCB布線圖設計規(guī)范 3 6 波峰焊對 PCB布板要求 2 7 用 PADS
格式:pdf
大?。?span id="qy6wn64" class="single-tag-height">1.1MB
頁數(shù): 77頁
評分: 4.3
OA 辦公自動化管理系統(tǒng)詳細設計說明書 中軟培訓實訓基地 第 1 頁 共 77 頁 編寫: 日期: 2013-07-31 審核: 日期: 批準: 日期: 受控狀態(tài): 是 發(fā)布版次: 3.0 日期: 2013-08-02 編號: OA辦公自動化管理系統(tǒng) 詳細設計說明書 OA 辦公系統(tǒng)詳細設計說明書 內(nèi)部文檔 第 2 頁 共 77 頁 變更記錄 日期 版本 變更說明 作者 2013/08/02 1.0 初始版本 2013/08/03 1.5 模塊匯總 2013/08/04 2.0 模塊功能詳細設計 2013/08/04 2.0 模塊功能詳細設計 2013/08/05 2.5 對象設計 2013/08/08 3.0 升級及審核 簽字確認 系統(tǒng)模塊 對應章節(jié) 對應部門 負責人簽字 OA 辦公系統(tǒng)詳細設計說明書 內(nèi)部文檔 第 3 頁 共 77 頁 目 錄 1 引言 ..............